1. 程式人生 > 其它 >Docker系列之二:離線安裝docker

Docker系列之二:離線安裝docker

技術標籤:linuxdockercentos

目錄

4 離線安裝docker

適用於系統映象源已自帶相關依賴包:

4.1 yum源rpm包安裝

4.2 官網rpm包直接下載

4.3 二進位制壓縮包安裝

適用於最小系統映象源無相關依賴包:

4.4 rpm包安裝docker服務(推薦)


4 離線安裝docker

在Linux系統中安裝docker,可通過線上安裝(centos的yum,ubuntu的apt-get等)、離線rpm包安裝、二進位制檔案安裝等。基於一些環境因素的限制,不能通過線上安裝,或者有rpm離線安裝包依賴的問題。

此離線安裝docker的方法經過本人多次試驗,均可以成功安裝並執行docker。


適用於系統映象源已自帶相關依賴包:

4.1 yum源rpm包安裝

  1. 首先在另一臺有網的機器上,yum線上安裝docker之前修改yum的配置檔案;
  2. yum預設是不會保留安裝包的,然後修改yum的配置檔案/etc/yum.confkeepcache=1
  3. yum安裝的依賴包、服務包,都在 cachedir=/var/cache/yum/$basearch/$releasever下面,此目錄可以在yum的配置檔案中修改;
  4. 然後用 find/var/cache/yum/-name"*.rpm" 找出所需的安裝包和依賴包下載打包到離線機器上安裝即可。
  5. 安裝docker的rpm包:
rpm -ivh containerd.io-1.2.13-3.2.el7.x86_64.rpm docker-ce-19.03.7-3.el7.x86_64.rpm container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm docker-ce-cli-19.03.7-3.el7.x86_64.rpm --force --nodeps

4.2 官網rpm包直接下載

下載地址:https://download.docker.com/linux/

https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

1. 將下載好的包上傳進機器的某個目錄裡;

2. 本地rpm包安裝:

rpm -ivh containerd.io-1.2.13-3.2.el7.x86_64.rpm docker-ce-19.03.7-3.el7.x86_64.rpm container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm docker-ce-cli-19.03.7-3.el7.x86_64.rpm --force --nodeps

3. 開啟服務

[[email protected] package]# systemctl start docker

// 開機自啟docker服務 或 “systemctl enable docker” 命令	
[[email protected] ~]# chkconfig docker on	

4.3 二進位制壓縮包安裝

在官網選擇具體的版本,比如我選擇的是docker-19.03.7版本

[[email protected] ~]# mkdir -p ~/tools/docker
[[email protected] ~]# cd ~/tools/docker

// 有網可以使用wget命令下載,若離線則下載完成後傳輸到機器的 ~/tools/docker 目錄
[[email protected] docker]# wget https://download.docker.com/linux/static/stable/x86_64/docker-19.03.7.tgz

1. 使用者組配置

// 新建使用者組
[[email protected] ~]# groupadd docker
 
// 將登入使用者加入到docker使用者組中
[[email protected] ~]# usermod -aG docker $USER
 
// 更新使用者組
[[email protected] ~]# newgrp docker

2. 安裝包解壓

[[email protected] ~]# cd ~/tools/docker
 
[[email protected] docker]# mkdir install-package
 
// 用於清理
[[email protected] docker]# tar -xf docker-19.03.7.tgz -C install-package --strip-components=1
 
// 解壓安裝至/usr/local/bin目錄下
[[email protected] docker]# tar -xf docker-19.03.7.tgz -C /usr/local/bin --strip-components=1

3. 配置docker.service服務

// 修改docker預設儲存路徑
[[email protected] ~]# mkdir -p ~/data/docker

在Linux系統配置systemctl管理的服務資訊:參考官網文件

修改/etc/systemd/system/docker.service服務配置檔案後,需要執行systemctl daemon-reload 重新載入後生效。

[[email protected] ~]# vim /etc/systemd/system/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
# ExecStart的啟動可選引數,可通過dockerd --help檢視
ExecStart=/usr/local/bin/dockerd -H unix://var/run/docker.sock --data-root=/home/root/data/docker
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
 
StartLimitBurst=3
 
StartLimitInterval=60s

LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
 
TasksMax=infinity

Delegate=yes
 
KillMode=process
 
[Install]
WantedBy=multi-user.target

4. 啟動docker服務

[[email protected] ~]# systemctl daemon-reload
 
// 通過systemctl啟動docker服務
[[email protected] ~]# systemctl start docker
 
// 設定為開機啟動
[[email protected] ~]# systemctl enable docker
 
// 驗證開放2375埠,若開放了,建議把2375埠關掉
[[email protected] ~]# netstat -lntp | grep dockerd

適用於最小系統映象源無相關依賴包:

若前面的3種方法不可行,則可以使用此方法

4.4 rpm包安裝docker服務(推薦)

將docker 的安裝包及其依賴包上傳到指定目錄裡:

本人上傳的rpm包及依賴包:https://download.csdn.net/download/Sara_cloud/13695259

// 強制安裝docker服務
[[email protected] rpm安裝包]# rpm -ivh *.rpm  --force --nodeps
//--nodeps  安裝時不檢查依賴關係
//--force   強制安裝

// 開啟服務
[[email protected] package]# systemctl start docker

// 開機自啟docker服務 或 “chkconfig docker on” 命令	
[[email protected] ~]# systemctl enable docker