CentOS7 docker-engine 徹底離線安裝

本地CentOS依賴包下載(有網絡環境)

  • yum只下載不安裝依賴包
$ yum install --downloadonly --downloaddir=/root/download <package-name>
  • 建立依賴包所在的yum repo目錄
$ mkdir -p /root/download
  • 默認狀況下,下載的rpm包位於如下位置:/var/cache/yum/x86_64/7
$ ll /var/cache/yum/x86_64/7
drwxr-xr-x 4 root root 4096 Dec 19 03:28 base
drwxr-xr-x 4 root root 4096 Dec 19 03:28 extras
-rw-r--r-- 1 root root  117 Dec 19 03:31 timedhosts
-rw-r--r-- 1 root root  381 Dec 19 03:31 timedhosts.txt
drwxr-xr-x 4 root root 4096 Dec 19 03:28 updates
  • 獲取createrepo安裝包
$ yum install --downloadonly --downloaddir=/root/download createrepo
  • 獲取更新yum源
$ yum update --downloadonly --downloaddir=/root/download
  • 獲取nginx安裝包
$ vi /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=0
enabled=1
$ yum install --downloadonly --downloaddir=/root/download nginx
  • 建立docker安裝源
$ tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF
$ yum --downloadonly --downloaddir=/root/download install docker-engine
  • 設置平時yum安裝軟件時不刪除安裝包
$ vi /etc/yum.conf
keepcache=1
  • 安裝createrepo
$ yum install createrepo
  • 初始化yum源的repodata
$ createrepo -pdo /root/download /root/download
$ createrepo --update /root/download

把依賴複製到徹底離線環境

  • 把yum獲取的rpm文件保存到yum-repohtml

  • 把yum-repo複製到離線環境的CentOS的/yum-repo目錄nginx


CentOS徹底離線環境docker-engine安裝(無網絡環境)

  • 移除默認的yum repo配置
$ cd /etc/yum.repos.d
$ ll
-rw-r--r-- 1 root root 1664 Nov 29 18:12 CentOS-Base.repo
-rw-r--r-- 1 root root 1309 Nov 29 18:12 CentOS-CR.repo
-rw-r--r-- 1 root root  649 Nov 29 18:12 CentOS-Debuginfo.repo
-rw-r--r-- 1 root root  630 Nov 29 18:12 CentOS-Media.repo
-rw-r--r-- 1 root root 1331 Nov 29 18:12 CentOS-Sources.repo
-rw-r--r-- 1 root root 2893 Nov 29 18:12 CentOS-Vault.repo
-rw-r--r-- 1 root root  314 Nov 29 18:12 CentOS-fasttrack.repo
$ mkdir bak
$ mv CentOS-* bak
  • 進行yum客戶端配置
$ vi /etc/yum.repos.d/localyum.repo
[localyum]
name=localyum
baseurl=file:///yum-repo
enable=1
gpgcheck=0
  • 進行yum源更新
$ yum clean all
$ yum makecache
  • 進行yum更新
$ yum update
  • yum update後會自動生成CentOS-*文件,務必刪除
$ cd /etc/yum.repos.d
$ mv CentOS-* bak
  • 安裝createrepo
$ yum install createrepo
  • 安裝nginx
$ yum install nginx
  • 設置nginx的訪問路徑指向自定義yum源目錄
$ vi /etc/nginx/conf.d/default.conf
    location / {
        root   /yum-repo;
        autoindex  on;
        index  index.html index.htm;
    }
  • 重啓nginx
$ nginx -s reload
  • 驗證nginx設置
$ curl -L localhost
$ vi /etc/yum.repos.d/localyum.repo
baseurl=http://localhost
  • 進行yum源更新
$ yum clean all
$ yum makecache
  • 驗證yum源
$ yum search docker-engine
$ yum install docker-engine
  • 若是/root/download下有新增的rpm安裝包,請使用如下命令更新repo
$ createrepo --update /root/download
相關文章
相關標籤/搜索