生产环境离线安装docker
docker离线安装
一般来说,在生产环境无法联网,所以记录离线安装部署docker步骤。
部署步骤
- 离线安装docker,需要下载docker的安装文件;链接: link , 我下的是版本[docker-20.10.7.tgz],文件不大,只有66.4M左右。
- 将安装包文件上传到服务器目录并解压。
tar -xvf docker-20.10.7.tgz
- 将解压出来的docker文件内容移动到 /usr/bin/ 目录下
cp docker/* /usr/bin/
- 将docker注册为service,在/etc/systemd/system目录下创建docker.service文件,并配置如下内容保存
vim /etc/systemd/system/docker.service
docker.service内容:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
注意:如果想更换docker容器和镜像(即docker info命令下的Docker Root Dir参数)生成的默认目录地址,则修改以下地方
- 添加文件权限并启动docker,执行如下命令
chmod +x /etc/systemd/system/docker.service #添加文件权限
systemctl daemon-reload #重载unit配置文件
systemctl start docker #启动Docker
systemctl enable docker.service #设置开机自启
- 验证docker安装是否成功
systemctl status docker #查看Docker状态
docker -v #查看Docker版本
问题1
1.执行systemctl status docker时,卡住不动。
执行下面命令
systemctl status docker.service
报错
或者出现:
则需要加入daemon.json文件,并指定docker的存储驱动
{
"storage-driver": "overlay2",
"graph": "/cstc/docker"
}
注意冒号后面带空格
如果还需要指定系统其他文件路径替换默认生成docker镜像路径,则需要添加"graph": "/cstc/docker"进deamon.json里。