1. 程式人生 > >CentOS7環境下離線搭建最新Docker-CE環境

CentOS7環境下離線搭建最新Docker-CE環境

概述

無法連線網際網路的情況下,我們需要使用docker就需要離線搭建,但是如果直接下載docker-ce的rpm包安裝的話會缺少各種依賴,經過摸索,發現配置本地yum源可以解決當前問題。本文將闡述在CentOS7下,通過配置本地yum源,離線安裝docker-ce。

本地源製作(有網環境)

  • 使用yum只下載不安裝依賴包
# yum install --downloadonly --downloaddir=/root/docker-ce-local <package-name>

配置安裝源存放路徑

  • 建立rpm源存放目錄
# mkdir -p /root/docker-ce-local
&& cd /root/docker-ce-local

注:預設情況下,下載的rpm包位於以下位置:/var/cache/yum/x86_64/7

獲取所有的依賴包

  • 獲取createrepo安裝包
# yum install --downloadonly \
--downloaddir=/root/docker-ce-local createrepo
  • 獲取系統更新yum源
# yum update --downloadonly --downloaddir=/docker-ce-local
  • 檢視官網docker教程,根據線上安裝教程改造命令
#官網教程地址
https:
//docs.docker.com/engine/installation/linux/docker-ce/centos/#prerequisites
  • 解除安裝舊版本
# yum remove docker \
docker-common \
docker-selinux \
docker-engine
  • 獲取docker-ce所需依賴
# yum install --downloadonly \
--downloaddir=/root/docker-ce-local \
yum-utils device-mapper-persistent-data lvm2
  • 設定docker-ce線上儲存庫
# yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  • 更新yum源索引
# yum makecache fast
  • 獲取docker-ce及相關rpm安裝源
# yum install --downloadonly --downloaddir=/root/docker-ce-local docker-ce
  • 檢視安裝時docker所需要的金鑰並下載
# more /etc/yum.repos.d/docker-ce.repo
# cd /root/docker-ce-local/
# wget https://download.docker.com/linux/centos/gpg

這裡寫圖片描述

初始化原始檔倉庫資料

  • 安裝createrepo
# yum install createrepo
  • 初始化原始檔的repodata
# createrepo -pdo /root/docker-ce-local /root/docker-ce-local
# createrepo --update /root/docker-ce-local

安裝源打包

  • 將資料夾打包為yum-local.tgz
# cd /root
# tar -zcvf centos-local.tgz docker-ce-local/

至此離線安裝包製作完成,將此包拷貝到離線的機器上,繼續以下操作。

配置離線本地安裝源

解壓上傳的離線包

  • 將tgz包上傳至/root路徑下,並解壓centos-local.tgz檔案
# cd /root
# tar -xvzf centos-local.tgz

安裝createrepo

# cd /root/docker-ce-local
# rpm -ivh createrepo-0.9.9-28.el7.noarch.rpm

注:createrepo版本可能不一樣,根據自己下載的包的版本安裝

備份安裝源

  • 將所有的安裝源移動到備份資料夾中
# cd /etc/yum.repos.d/
# mkdir repobak
# mv CentOS* repobak/

配置本地原始檔

  • 新增docker-ce-local.repo原始檔,寫入以下內容
# vi /etc/yum.repos.d/docker-ce-local.repo

[docker-ce-local]
name=Local Yum
baseurl=file:///root/docker-ce-local/
gpgcheck=1
gpgkey=file:///root/docker-ce-local/gpg
enabled=1

生成源索引及快取

# createrepo /root/docker-ce-local
# yum makecache

安裝docker-ce

# yum install docker-ce

注:安裝過程比較耗時,需等待

啟動並測試

# systemctl start docker.service 
# docker version

這裡寫圖片描述
至此docker離線安裝成功。