老姜讲技术

优秀是一种习惯!

--亚里士多德

CentOS安装Docker

容器技术这里不再赘述,请自行百度。

Docker官方要求CentOS 7。 首先准备CentOS7系统,需要root账户。

安装过程主要参考官方文档。 https://docs.docker.com/engine/install/centos/

首先卸载已安装的docker相关软件包,以免版本冲突安装失败。一般来说没有安装过docker的新机器是不会有这些包的。

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

安装yum-utils,添加docker的repo,这里使用中科大的镜像。

$ sudo yum install -y yum-utils
$ sudo yum-config-manager \
    --add-repo \
    http://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo

添加软件源之后,因为repo文件是完全镜像的官方版,软件包下载地址还是docker.com的,需要替换为国内的源,这里使用中科大的镜像。

sudo sed -i 's+download.docker.com+mirrors.ustc.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo

软件源添加好了就可以安装啦!

$ sudo yum install docker-ce docker-ce-cli containerd.io

安装之后还不能愉快的玩耍,pull镜像的时候就会发现巨慢,同样docker-hub也可以使用国内的镜像。

编辑/etc/docker/daemon.json文件,加入以下内容:

{
  "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}

重启docker服务sudo systemctl restart docker就可以了。

买一赠一环节

安装了docker怎么能不用docker-compose呢,docker-compose对于单机运行多个关联容器的场景是非常好用的。

官方的版本在 https://github.com/docker/compose/releases ,但是github的下载速度非常感人,所以这里使用阿里云的镜像,阿里云镜像版compose只更新到1.21.2版本,不过不影响一般使用。

sudo curl -L "http://mirrors.aliyun.com/docker-toolbox/linux/compose/1.21.2/docker-compose-Linux-x86_64" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

关于podman

podman+buildah+skopeo的组合非常火,最主要的是podman不需要root权限,没有daemon,build时不需要传输大量文件到service,速度也快很多,但是对compose的兼容性目前不是很好,这方面研究透彻后再来更新。