8-22 6 views
安装环境
OS:CentOS 7
Docker:1.13.1
部署
安装docker
1 |
yum -y install docker |
启用支持私有仓库的http协议
docker默认是走https协议的,由于我这是内部使用的,不需要https协议
另外我的环境中是使用nginx做代理的,所以端口是80
需要注意,所有的docker客户端的服务器上也需要进行修改
[root@localhost ~]# vim /etc/docker/daemon.json
1 |
{ "insecure-registries":["10.9.54.19"]} |
启动docker
1 2 |
systemctl daemon-reload systemctl enable docker && systemctl start docker |
安装docker registry
1 |
docker run -d -e REGISTRY_HTTP_ADDR=0.0.0.0:5000 -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry hub.c.163.com/library/registry:2 |
-e: 指定环境变量
REGISTRY_HTTP_ADDR: 指定容器的监听端口
-p: 端口映射
–restart=always: 总是在容器退出时重启
-v: 将宿主机的目录映射到容器中
–name: 容器名字
nginx代理
配置nginx
我是最简化配置,生产环境请自行根据需要去进行调整
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
server { listen 80 default_server; server_name _; root /usr/share/nginx/html; client_max_body_size 1024m; location / { proxy_pass http://localhost:5000; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } } |
重启nginx
1 |
systemctl enable nginx && systemctl start nginx |
测试
从公网获取镜像
1 2 |
docker pull hub.c.163.com/library/mysql:latest docker tag hub.c.163.com/library/mysql:latest 10.9.54.19/library/mysql:latest |
提交到私有仓库
1 |
docker push 10.9.54.19/library/mysql:latest |
在docker客户端获取
需要注意,这台客户端的docker已经修改过,支持私有库的http协议
1 |
docker pull 10.9.54.19/library/mysql:latest |
如果想赏钱,可以用微信扫描下面的二维码,一来能刺激我写博客的欲望,二来好维护云主机的费用; 另外再次标注博客原地址 itnotebooks.com 感谢!
