Eli's Blog

1. 数据卷设计的目的

  • 经过特殊设计的目录,可以绕过联合文件系统(UFS),为一个或多个容器提供访问。
  • 在于数据的永久化,它完全独立于容器的生命周期。因此,Docker不会在容器删除时删除其挂载的数据卷,也不会存在类似的垃圾回收机制,对容器引用的数据卷进行处理

1. Dockerfile 指令

  • FROM: 指定基础镜像

    • 服务类镜像: nginxredismongomysqlhttpdphptomcat
    • 语言类镜像: nodeopenjdkpythonrubygolang
    • 操作系统镜像: ubuntudebiancentosfedoraalpine
    • 空白镜像:scratch 适用于静态编译的程序,不需要操作系统支撑。
  • COPY: 复制文件

  • ADD: 支持添加URL,自动解压文件等

  • WORKDIR: 指定默认目录工作

1. CentOS

1.1 安装依赖包

1
2
3
4
5
6
7
8
# 更换yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

curl http://mirrors.aliyun.com/repo/Centos-7.repo -o /etc/yum.repos.d/CentOS-Base.repo

yum makecache

yum install -y conntrack ntpdate ntp ipvsadm ipset iptables sysstat wget vim net-tools git

1. 什么是容器

  • 一种虚拟化的方案
  • 操作系统级别的虚拟化
  • 只能运行相同或相似内核的操作系统
  • 依赖Linux内核特性:Namespace和Cgroups(Control Group)

2. 什么是Docker

将应用程序自动部署到容器

Boot2Docker: 本质是一个Linux轻量级VM,用于Windows/macOS系统上使用Docker (开发、测试使用)