目录

centos7-docker离线安装

centos7 docker离线安装

介绍

本文主要讲了如何在完全没网的情况下安装docker(适合于高网络安全要求的企业)
本文适用的centos版本:

[root@0001 temp]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 

采用docker in docker下载依赖

实际试验后,还是在docker里面下载依赖最靠谱,避免本地环境是mac或者非完整版本。(我也尝试过在其他机器下载要么版本不对,要么网络不通,最终选择的docker in docker)

启动容器:

在hub.docker.com中搜索与你匹配的镜像:

docker run -it -v $(pwd)/output:/output centos:7.6.1810 /bin/bash

下载依赖

然后在容器内执行:


 ---  这是更新最新mirror地址(因为7已经EOL了)
    
    sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
    sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

    yum install -y yum-utils
    yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
    # 查找可用的 18.06.x 版本 (也可以在这里看 https://download.docker.com/linux/centos/7/x86_64/stable/Packages/   看docker-ce)
    echo "可用版本:"
    yum list docker-ce --showduplicates | grep "18\.03\." | head -5
    
    
    # 下载特定版本(替换为您选择的版本)
    # docker 18.x 中包含了cli所以不需要带
    # 
    cd /output/temp
    yumdownloader --resolve docker-ce-18.03.0.ce-1.el7.centos containerd.io

然后在本地的output目录就可以看到依赖的rpm

安装在对应的机器上:

yum localinstall -y *.rpm

如果localinstall报依赖错误 则把相关rpm删掉后即可. 比如这个里面selinux*, libaudit* 都删掉即可。