前言:
有些机器没法联网,但是需要使用 docker 服务,所以就需要离线安装 docker。
一、 获取安装包
安装包下载地址:https://download.docker.com/linux/static/stable/x86_64/
从中选择一个比较稳定的版本,下载后并上传到服务器
二、 安装docker
1. 解压 docker 压缩文件到 /usr/bin/ 目录下
tar -xvf docker-18.06.1-ce.tgz
cp docker/* /usr/bin/
2. 准备 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
3. docker.service 文件拷贝到 /etc/systemd/system/ 目录,并给与执行权限
cp docker.service /etc/systemd/system/
chmod +x /etc/systemd/system/docker.service
4. 启动 docker 服务
systemctl daemon-reload #重新加载配置文件
systemctl start docker #启动Docker
systemctl enable docker.service #设置开机自启
5. 验证 docker 服务状态
systemctl status docker