Docker简介
作为一种新兴的虚拟化方式,Docker 跟传统的虚拟机化方式相比具有众多的优势。
- 更高效的利用系统资源
- 更快速的启动时间
- 一致的运行环境
- 持续交付和部署
- 更轻松的迁移
- 更轻松的维护和扩展
对比传统虚拟机总结
特性 | 容器 | 虚拟机 |
启动 | 秒级 | 分钟级 |
硬盘使用 | 一般为 MB | 一般为 GB |
性能 | 接近原生 | 弱于 |
系统支持量 | 单机支持上千个容器 | 一般几十个 |
基本概念
Docker 包括三个基本概念
- 镜像(Image)
- 容器(Container)
- 仓库(Repository)
卸载旧版本
# yum remove docker # yum remove docker-common # yum remove docker-selinux # yum remove docker-engine
使用yum源安装
安装依赖包
# yum install -y yum-utils # yum install device-mapper-persistent-data # yum install lvm2
添加yum源
# yum-config-manager --add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
安装Docker CE
更新yum源缓存,并安装docker-ce
# yum makecache fast
# yum install docker-ce
启动Docker-CE
# systemctl enable docker
# systemctl start docker
测试Docker是否安装正确
# docker run hello-world
若能正常输入以上信息,说明安装成功
添加内核参数
如果再centos使用docker ce 看到下面的告警信息:
WARNING: bridge-nf-call-iptables is disabled WARNING: bridge-nf-call-ip6tables is disabled
请添加内核配置参数以启用这些功能,然后重新加载sysctl.conf 即可
# tee -a /etc/sysctl.conf <<-EOF > net.bridge.bridge-nf-call-ip6tables = 1 > net.bridge.bridge-nf-call-iptables = 1 > EOF # sysctl -p
镜像加速器
国内从Docker Hub拉取镜像有时会遇到困难,此时可配置镜像加速器,下面以Docker官方加速器为例,进行示范
Centos 7
对于使用systemd的系统,在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在,新建文件)
{ "registry-mirrors": [ "https://registry.docker-cn.com" ] }
之后重启服务
# systemctl daemon-reload
# systemctl restart docker