一 :使用背景
隨着公司網絡安全意識的增加,會將服務器“斷網”,既斷開服務器訪問外網的權限,無法訪問外網資源,這就使我們在按照應用,如 docker 、nginx 、redis 等無法按照網上教程直接拉取相關資源安裝。
二 : 解決方法
1、手動上傳資源
這種方式適用於VPN1安全性要求極高的網絡環境
優點 :方便,快捷,不用考慮網絡限制,直接上傳安裝即可
缺點 :資源不好下載或下載慢,對版本要求高的用戶無法快速找到對應版本號資源
2、更換yum repo源
默認使用官方的,下載慢,推薦使用阿里或ustc
配置文件在 /etc/yum.repos.d 目錄下查看
步驟一 :修改DNS
【CentOS6/7/8】
編輯配置文件 vim /etc/resolv.conf
nameserver 10.12.107.150
nameserver 10.12.107.151
爲防止服務器重啓時 NetworkManager 服務將 dns 重置,可以通過 chattr +i /etc/resolv.conf 命令將文件鎖定
【Ubuntu14/16/18/20】
編輯配置文件 vim /etc/resolvconf/resolv.conf.d/base
nameserver 10.12.107.150
nameserver 10.12.107.151
之後執行:resolvconf -u 使配置生效
chattr +i /etc/resolv.conf 鎖定文件
chattr -i /etc/resolv.conf 解除鎖定
步驟二 :備份
【CentOS6/7/8】
# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
【Ubuntu14/16/18/20】
# mv /etc/apt/sources.list /etc/apt/sources.list.backup
步驟三 :下載配置文件
注意:下載配置文件之後,CentOS系統需要執行 yum makecache 生成緩存,Ubuntu系統需要執行 apt-get update 更新源,才能使用
【CentOS6】
# curl -ko /etc/yum.repos.d/CentOS-6.repo https://repos.onecc.me/download/CentOS-6.repo
【CentOS7】
# curl -ko /etc/yum.repos.d/CentOS-7.repo https://repos.onecc.me/download/CentOS-7.repo
【CentOS8】
# curl -ko /etc/yum.repos.d/CentOS-8.repo https://repos.onecc.me/download/CentOS-8.repo
【Ubunt14】
# curl -ko /etc/apt/sources.list https://repos.onecc.me/download/Ubuntu14.repo
【Ubunt16】
# curl -ko /etc/apt/sources.list https://repos.onecc.me/download/Ubuntu16.repo
【Ubuntu18】
# curl -ko /etc/apt/sources.list https://repos.onecc.me/download/Ubuntu18.repo
【Ubuntu20】
# curl -ko /etc/apt/sources.list https://repos.onecc.me/download/Ubuntu20.repo
步驟四 :配置其他倉庫
【Maven】
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里雲公共倉庫</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
【NPM】
如需配置阿里源也可以安裝倉庫管理軟件 nrm,通過 nrm 指定 taobao 倉庫
# npm install nrm --registry=https://registry.npm.taobao.org
# nrm ls
# nrm use taobao
【Pypi】
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
第四步一般不使用
三 :配置源文件解析
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#released updates
[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
enabled=0 : 開啓yum (1 : 關閉yum)
gpgcheck=1 : 進行gpg校驗 (0 : 不校驗)
四 :示例
docker 的安裝
# step 1: 安裝必要的一些系統工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加軟件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新並安裝 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 開啓Docker服務
sudo service docker start