docker 離線安裝(tgz)

說明
使用虛擬機真實模仿離線環境
虛擬機系統爲 CentOS 7.5.1804(kernel-3.10.0-862.el7.x86_64)

本文使用 tgz 文件 離線安裝 Docker

正文

  1. 下載 Docker 二進制文件(離線安裝包):下載地址
    本文使用 /x86_64/docker-17.12.1-ce.tgz,注意對應操作系統類型。
  2. 通過 FTP工具將 docker-17.12.1-ce.tgz 上傳到服務器上
  3. 解壓安裝包
    tar zxf docker-17.12.1-ce.tgz
  4. 將docker 相關命令拷貝到 /usr/bin,方便直接運行命令
    sudo cp docker/* /usr/bin/
  5. 啓動Docker守護程序
    sudo dockerd &
  6. 驗證是否安裝成功
    • 事先準備好 hello-world 鏡像 tar 文件並上傳到服務器上(附上下載鏈接
    • 通過 docker load -i {tar文件名} 加載鏡像
    • 執行 docker run hello-world 拉起鏡像,看鏡像是否成功運行。成功運行即離線安裝成功。
      如果報錯:Error … process caused “process_linux.go:430: container init caused “write /proc/self/attr/keycreate: permission denied””: unknown. 則需要修改 /etc/selinux/config 文件,將其中的SELINUX屬性改爲disabled(SELINUX=disabled)。重啓服務器(reboot)再嘗試。在這裏插入圖片描述

如何停止 docker 服務?

  1. 根據進程號(pid)停止docker服務
    執行 find / -name docker.pid 查找docker.pid 文件位置
    執行 cat {docker.pid路徑} 打印docker.pid
    執行 kill {pid} 殺死docker進程(若無法正常終止進程可加上 -9 參數強制終止,kill -9 {pid})
    在這裏插入圖片描述
  2. 通過systemctl stop docker 停止服務
    需要先將docker註冊成系統服務,參見下文。

如何將docker註冊成系統服務?
在 /usr/lib/systemd/system/ 目錄下創建docker.service 文件
vi /usr/lib/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=/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
  • 啓動 / 停止 docker 服務
    systemctl start/stop docker
  • 開機自啓 / 取消開機自啓 docker 服務
    systemctl enable/disable docker

使用 docker info 命令測試 docker是否啓動,正常打印docker信息即正常啓動。


題外話:

reference:
Docker官網 二進制安裝包安裝文檔
Docker tgz包下載地址
Docker Hello-world 鏡像
yum安裝軟件時出現No package ** available的問題


end

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章