CentOS 7 安装 Docker,并进行 Docker 加速,拉取镜像
一、Yum 安装 Docker,配置 Docker CE 镜像站:
参考:Docker CE 镜像源站 需要魔法:在 CentOS 上安装 Docker 引擎 |Docker 文档
1、PS: 如果有旧版本的 Docker 或 尝试安装新版本之前,请先卸载这些旧版本,以及关联的依赖项。docker
docker-engine
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2、全新安装
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce docker-ce-cli containerd.io
# Step 4: 开启Docker服务并设置它在系统启动时自动启动
sudo systemctl start docker
sudo systemctl enable docker
# Step 5: 验证 Docker 是否安装成功并查看其版本
docker --version
注意:其他注意事项在下面的注释中
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
# 将 [docker-ce-test] 下方的 enabled=0 修改为 enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
# Loading mirror speeds from cached hostfile
# Loaded plugins: branch, fastestmirror, langpacks
# docker-ce.x86_64 17.03.1.ce-1.el7.centos docker-ce-stable
# docker-ce.x86_64 17.03.1.ce-1.el7.centos @docker-ce-stable
# docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
# Available Packages
# Step2 : 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
# 注意:在某些版本之后,docker-ce安装出现了其他依赖包,如果安装失败的话请关注错误信息。例如 docker-ce 17.03 之后,需要先安装 docker-ce-selinux。
# yum list docker-ce-selinux- --showduplicates | sort -r
# sudo yum -y install docker-ce-selinux-[VERSION]
# 通过经典网络、VPC网络内网安装时,用以下命令替换Step 2中的命令
# 经典网络:
# sudo yum-config-manager --add-repo http://mirrors.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo
# VPC网络:
# sudo yum-config-manager --add-repo http://mirrors.could.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo
二、配置阿里云 Docker 加速服务申请
截图操作流程如下:
管理控制台 -> 登录账号 -> 左上角控制台 -> 产品与服务 -> 容器 -> 容器镜像服务ACR
2、容器镜像服务ACR -> 镜像工具 -> 镜像加速器 -> 复制加速器地址
3、编辑daemon配置文件vim /etc/docker/daemon.json
把你的加速器地址替换进去保存
{
"registry-mirrors": ["https://**********.mirror.aliyuncs.com"]
}
如果你的环境不能使用阿里云的,也可以像这样,写上多个源。
{
"registry-mirrors": [
"https://<changme>.mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn"
]
}
4、加载daemon配置文件,重启Docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker
三、使用阿里云 Docker 镜像加速,远程拉取docker镜像
1、启动onlyoffice/documentserver
docker第一次运行,远程拉取docker镜像
docker run -i -t -d -p 8888:80 --restart=always -e JWT_SECRET=b'z5g0@kf**************-rd=)hb' onlyoffice/documentserver
[root@onlyoffice-server opt]# docker run -i -t -d -p 8888:80 --restart=always -e JWT_SECRET=b**************qz$afxje3-e-rd=)hb' onlyoffice/documentserver
Unable to find image 'onlyoffice/documentserver:latest' locally
latest: Pulling from onlyoffice/documentserver
f3ef4ff62e0d: Pull complete
d07cf79b5f7d: Pull complete
e5395a39b9a5: Pull complete
e6010a09edba: Pull complete
30fedd4b1d62: Pull complete
Digest: sha256:7e4a36f99966640**************67575ba9c8f7f6
Status: Downloaded newer image for onlyoffice/documentserver:latest
36cf03b271e5ea5377b44a20b84*****************8ecc5c5c
[root@onlyoffice-server opt]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
36cf03b271e5 onlyoffice/documentserver "/app/ds/run-documen…" 26 seconds ago Up 11 seconds 443/tcp, 0.0.0.0:8888->80/tcp, :::8888->80/tcp quizzical_murdock
[root@onlyoffice-server opt]#
2、没有配Docker 镜像加速之前,下载失败(被墙或网络不通)
查看代码
[root@onlyoffice-server opt]# docker run -i -t -d -p 8888:80 --restart=always -e JWT_SECRET=b'z5g0@kftg99ya*********e-rd=)hb' onlyoffice/documentserver
Unable to find image 'onlyoffice/documentserver:latest' locally
latest: Pulling from onlyoffice/documentserver
7646c8da3324: Retrying in 1 second
71fafe0ae01c: Retrying in 1 second
18f635ba4c9e: Retrying in 1 second
6606e9618ca7: Waiting
e4eedcb0c04a: Waiting
aeac35cc396f: Waiting
a4e59a1eccbf: Waiting
docker: error pulling image configuration: download failed after attempts=6: dial tcp 31.13.87.33:443: i/o timeout.
See 'docker run --help'.
[root@onlyoffice-server opt]#
四、安装成功后,查看docker容器的“CONTAINER ID”或者“NAMES”
[root@onlyoffice-server opt]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
36cf03b271e5 onlyoffice/documentserver "/app/ds/run-documen…" 44 minutes ago Up 44 minutes 443/tcp, 0.0.0.0:8888->80/tcp, :::8888->80/tcp quizzical_murdock
[root@onlyoffice-server opt]#
五、进入容器的相关命令:
docker exec -it <container_name_or_id> bash
可以修改8080端口,启动容器的命令
# 停止容器(请将<container_id>替换为实际的容器ID)
# docker stop <container_id>
docker stop 36cf03b271e5
# 使用更改端口后的命令启动容器
docker run -i -t -d -p 8080:80 --restart=always -e JWT_SECRET=b'z5g0@kf**************-rd=)hb' onlyoffice/documentserver
六、参考:Docker 镜像库国内加速的几种方法