Docker离线安装
一、安装步骤
1. 下载 Docker 二进制文件(离线安装包)
注:本文使用 /x86_64/docker-18.06.1-ce.tgz,注意对应操作系统类型。
2. 通过 FTP工具将 docker-18.06.1-ce.tgz 上传到服务器上
3. 解压安装包
tar zxf docker<span class="token operator">-</span><span class="token number">18.06</span><span class="token number">.1</span><span class="token operator">-</span>ce<span class="token punctuation">.</span>tgztar zxf docker<span class="token operator">-</span><span class="token number">18.06</span><span class="token number">.1</span><span class="token operator">-</span>ce<span class="token punctuation">.</span>tgztar zxf docker-18.06.1-ce.tgz
4. 将docker 相关命令拷贝到 /usr/bin,方便直接运行命令
sudo cp dockersudo cp dockersudo cp docker
5. 启动Docker守护程序
sudo dockerd <span class="token operator">&</span>sudo dockerd <span class="token operator">&</span>sudo dockerd &
6. 验证是否安装成功,执行docker info命令,若正常打印版本信息则安装成功。
docker infodocker infodocker info
二、将docker注册成系统服务(记得kill docker服务后,再执行这一步哦)
1. 在 /usr/lib/systemd/system/ 目录下创建docker.service 文件
sudo vi <span class="token operator">/</span>usr<span class="token operator">/</span>lib<span class="token operator">/</span>systemd<span class="token operator">/</span>system<span class="token operator">/</span>docker<span class="token punctuation">.</span>servicesudo vi <span class="token operator">/</span>usr<span class="token operator">/</span>lib<span class="token operator">/</span>systemd<span class="token operator">/</span>system<span class="token operator">/</span>docker<span class="token punctuation">.</span>servicesudo vi /usr/lib/systemd/system/docker.service
<span class="token punctuation">[</span><span class="token class-name">Unit</span><span class="token punctuation">]</span> <span class="token class-name">Description</span><span class="token operator">=</span><span class="token class-name">Docker</span> <span class="token class-name">Application</span> <span class="token class-name">Container</span> <span class="token class-name">Engine</span> <span class="token class-name">Documentation</span><span class="token operator">=</span>https<span class="token operator">:</span><span class="token operator">/</span><span class="token operator">/</span>docs<span class="token punctuation">.</span>docker<span class="token punctuation">.</span>com <span class="token class-name">After</span><span class="token operator">=</span>network<span class="token operator">-</span>online<span class="token punctuation">.</span>target firewalld<span class="token punctuation">.</span>service <span class="token class-name">Wants</span><span class="token operator">=</span>network<span class="token operator">-</span>online<span class="token punctuation">.</span>target <span class="token punctuation">[</span><span class="token class-name">Service</span><span class="token punctuation">]</span> <span class="token class-name">Type</span><span class="token operator">=</span>notify <span class="token class-name">ExecStart</span><span class="token operator">=</span><span class="token operator">/</span>usr<span class="token operator">/</span>bin<span class="token operator">/</span>dockerd <span class="token class-name">ExecReload</span><span class="token operator">=</span><span class="token operator">/</span>bin<span class="token operator">/</span>kill <span class="token operator">-</span>s HUP $MAINPID <span class="token class-name">LimitNOFILE</span><span class="token operator">=</span>infinity <span class="token class-name">LimitNPROC</span><span class="token operator">=</span>infinity <span class="token class-name">TimeoutStartSec</span><span class="token operator">=</span><span class="token number">0</span> <span class="token class-name">Delegate</span><span class="token operator">=</span>yes <span class="token class-name">KillMode</span><span class="token operator">=</span>process <span class="token class-name">Restart</span><span class="token operator">=</span>on<span class="token operator">-</span>failure <span class="token class-name">StartLimitBurst</span><span class="token operator">=</span><span class="token number">3</span> <span class="token class-name">StartLimitInterval</span><span class="token operator">=</span><span class="token number">60</span>s <span class="token punctuation">[</span><span class="token class-name">Install</span><span class="token punctuation">]</span> <span class="token class-name">WantedBy</span><span class="token operator">=</span>multi<span class="token operator">-</span>user<span class="token punctuation">.</span>target<span class="token punctuation">[</span><span class="token class-name">Unit</span><span class="token punctuation">]</span> <span class="token class-name">Description</span><span class="token operator">=</span><span class="token class-name">Docker</span> <span class="token class-name">Application</span> <span class="token class-name">Container</span> <span class="token class-name">Engine</span> <span class="token class-name">Documentation</span><span class="token operator">=</span>https<span class="token operator">:</span><span class="token operator">/</span><span class="token operator">/</span>docs<span class="token punctuation">.</span>docker<span class="token punctuation">.</span>com <span class="token class-name">After</span><span class="token operator">=</span>network<span class="token operator">-</span>online<span class="token punctuation">.</span>target firewalld<span class="token punctuation">.</span>service <span class="token class-name">Wants</span><span class="token operator">=</span>network<span class="token operator">-</span>online<span class="token punctuation">.</span>target <span class="token punctuation">[</span><span class="token class-name">Service</span><span class="token punctuation">]</span> <span class="token class-name">Type</span><span class="token operator">=</span>notify <span class="token class-name">ExecStart</span><span class="token operator">=</span><span class="token operator">/</span>usr<span class="token operator">/</span>bin<span class="token operator">/</span>dockerd <span class="token class-name">ExecReload</span><span class="token operator">=</span><span class="token operator">/</span>bin<span class="token operator">/</span>kill <span class="token operator">-</span>s HUP $MAINPID <span class="token class-name">LimitNOFILE</span><span class="token operator">=</span>infinity <span class="token class-name">LimitNPROC</span><span class="token operator">=</span>infinity <span class="token class-name">TimeoutStartSec</span><span class="token operator">=</span><span class="token number">0</span> <span class="token class-name">Delegate</span><span class="token operator">=</span>yes <span class="token class-name">KillMode</span><span class="token operator">=</span>process <span class="token class-name">Restart</span><span class="token operator">=</span>on<span class="token operator">-</span>failure <span class="token class-name">StartLimitBurst</span><span class="token operator">=</span><span class="token number">3</span> <span class="token class-name">StartLimitInterval</span><span class="token operator">=</span><span class="token number">60</span>s <span class="token punctuation">[</span><span class="token class-name">Install</span><span class="token punctuation">]</span> <span class="token class-name">WantedBy</span><span class="token operator">=</span>multi<span class="token operator">-</span>user<span class="token punctuation">.</span>target[Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity TimeoutStartSec=0 Delegate=yes KillMode=process Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
2. 启动 / 停止 docker 服务
systemctl start<span class="token operator">/</span>stop dockersystemctl start<span class="token operator">/</span>stop dockersystemctl start/stop docker
3. 开机自启/取消开机自启 docker 服务
systemctl enable<span class="token operator">/</span>disable dockersystemctl enable<span class="token operator">/</span>disable dockersystemctl enable/disable docker
原文链接:https://blog.csdn.net/fy512/article/details/123257474?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522171836840916800222838180%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=171836840916800222838180&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-20-123257474-null-null.nonecase&utm_term=docker%E3%80%81%E5%A5%BD%E7%94%A8