Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux 或 Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
前言
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux 或 Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
前置条件
版本问题和卸载旧版本
64-bit 系统 kernel 3.10+
- 检查内核版本,返回的值大于 3.10 即可。
 
$ uname -r
3.10.0-693.el7.x86_64 # 64-bit 系统 kernel 3.10+
- 使用 sudo 或 root 权限的用户登入终端。
 - 卸载旧版本(如果安装过旧版本的话)
 
$ yum remove docker \
      docker-common \
      docker-selinux \
      docker-engine
安装
安装包和其他驱动依赖
- 安装需要的软件包驱动依赖
 
$ yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
- 设置 yum 源
 
$ yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
1.安装 docker
第一种: 直接安装最新本
$ yum install -y docker-ce
第二种: 安装指定版本 查询版本列表
$ yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64            3:19.03.1-3.el7                    docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos            docker-ce-stable
指定版本安装(这里的例子是安装上面列表中的第一个)
$ yum install -y docker-ce-3:19.03.1
Docker 的使用
启动与验证
- 启动 docker 服务
 
$ sudo systemctl start docker
$ sudo systemctl enable docker # 如果想添加到开机启动
- 验证安装是否成功(有 client 和 service 两部分表示 docker 安装启动都成功了)```yml $ docker version Version: 19.03.1 API version: 1.40 Go version: go1.12.5 Git commit: 74b1e89 Built: Thu Jul 25 21:21:07 2019 OS/Arch: linux/amd64 Experimental: false
 
Server: Docker Engine - Community Engine: Version: 19.03.1 API version: 1.40 (minimum version 1.12) Go version: go1.12.5 Git commit: 74b1e89 Built: Thu Jul 25 21:19:36 2019 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.2.6 GitCommit: 894b81a4b802e4eb2a91d1ce216b8817763c29fb runc: Version: 1.0.0-rc8 GitCommit: 425e105d5a03fabd737a126ad93d62a9eeede87f docker-init: Version: 0.18.0 GitCommit: fec3683
### Docker 镜像加速地址
1. 添加编辑daemon.json
```sh
$ vim /etc/docker/daemon.json
{
    "registry-mirrors": ["https://fy707np5.mirror.aliyuncs.com"]
}
- 重新加载并
重启Docker 
$ systemctl daemon-reload
$ systemctl restart docker
Docker 更新和卸载
- 更新 Docker CE
 
$ sudo yum update docker-ce
- 卸载 Docker CE
 
$ sudo yum remove docker-ce
- 删除本地文件
 
$ sudo rm -rf /var/lib/docker
注意docker 的本地文件,包括镜像(images), 容器(containers), 存储卷(volumes)等,都需要手工删除。默认目录存储在 /var/lib/docker。
安装 docker-compose
CURL安装出错
按照官方文档,使用curl方式安装docker-compose后,验证是否安装成功时出错
- 安装时使用的命令
 
curl -L https://github.com/docker/compose/releases/download/1.14.0-rc2/docker-compose-`uname -s`-`ur/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
- 如果启动时报如下错误,说明 curl 安装方式下载的包不完整。 [1814] Cannot open self /usr/local/bin/docker-compose or archive /usr/local/bin/docker-compose.pkg
 
安装包手动下载
- 进入官网, 选择最新版手动下载。当前最新
1.25.0-rc2的docker-compose-Linux-x86_64 - 然后将文件上传到
/usr/local/bin/ 文件夹下,然后将其重命名为docker-compose,修改此文件的权限,增加可执行: 
chmod +x /usr/local/bin/docker-compose
- 然后再运行
 
$ docker-compose version
docker-compose version 1.25.0-rc2, build 661ac20e
docker-py version: 4.0.1
CPython version: 3.7.4
OpenSSL version: OpenSSL 1.1.0k  28 May 2019
