修改yum源
1.如果使用代理,给yum添加代理
echo "proxy=http://代理IP:端口" >> /etc/yum.conf
2.下载wget
yum install -y wget
3.如果使用代理,给wget添加代理
vi /etc/wgetrc
添加
https_proxy=http://代理IP:端口/
http_proxy=http://代理IP:端口/
ftp_proxy=http://代理IP:端口/
source /etc/wgetrc
4.yum源修改为阿里云
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
安装Docker
查看安装过的docker相关的包并删除
yum list installed | grep docker
yum -y remove docker*
安装docker
yum install -y docker
如果使用代理,给docker添加代理
vi /etc/systemd/system/docker.service.d/proxy.conf(没有请创建)
添加
[Service]
Environment="HTTP_PROXY=http://代理IP:端口"
Environment="HTTPS_PROXY=http://代理IP:端口"
Environment="NO_PROXY=.x,hub.com,cae.com,localhost"
配置参数
vi /etc/docker/daemon.json
添加
{
"hosts": ["tcp://0.0.0.0:2375","unix:///var/run/docker.sock"],
"insecure-registries": ["hub.x", "hub.com", "h.com","hub.docker.com","docker.io","192.168.56.103:5000"] #镜像下载地址,可以添加私有的镜像仓库
}
修改镜像下载地址(可以不修改)
vi /etc/sysconfig/docker
修改 selinux-enabled=false
添加
ADD_REGISTRY='--add-registry 镜像仓库IP:端口' #设置默认的镜像下载仓库,没有镜像时,从其他仓库下载
重启docker并设置开机启动
systemctl daemon-reload && systemctl restart docker && systemctl enable docker
创建私有仓库
sudo docker run -d -v /home/hzq/registry:/var/lib/registry -p 5000:5000 --restart=always --privileged=true --name registry registry:latest
-
-v /home/hzq/registry:/var/lib/registry
默认情况下,会将仓库存放于容器内的/var/lib/registry目录下,指定本地目录挂载到容器。 -
-p 5000:5000
端口映射 -
--restart=always1
在容器退出时总是重启容器,主要应用在生产环境 -
--privileged=true
在CentOS7中的安全模块selinux把权限禁掉了,参数给容器加特权,不加上传镜像会报权限错误OSError: [Errno 13] Permission denied: ‘/tmp/registry/repositories/liibrary’
)或者(Received unexpected HTTP status: 500 Internal Server Error
)错误 -
--name registry
指定容器的名称