在國內使用docker pull老是不能正常拉取文件下來,如今能夠本身製做鏡像服務器了 nginx
但願你已經有了無需密碼就能登錄的centos-newssh鏡像,若是尚未,請看Docker使用系列四:http://my.oschina.net/feedao/blog/224249 git
製做Docker鏡像私服步驟以下: docker
本文假設本機IP是192.168.56.101,Registry服務的域名是registry.feedao.com shell
第一步執行下面的命令會建立一個名爲centos-registry鏡像: centos
docker build -t centos-registry https://git.oschina.net/feedao/Docker_shell/raw/start/Dockerfile-registry
第二步,建立registry容器,這裏要監聽22和5000端口 服務器
docker run -d -p 127.0.0.1:33307:22 -p 127.0.0.1:5000:5000 centos-registry
測試: ssh
[root@docker-base docker-temp]# curl 127.0.0.1:5000 curl
出現:"docker-registry server (dev)" 表明registry進程自動了 測試
第三步,配置nginx: ui
yum -y install nginx service nginx start echo -e "server {\n listen 80;\n server_name registry.feedao.com;\n location / {\n proxy_set_header Host \$host;\n proxy_pass http://127.0.0.1:5000/;\n }\n}" >>/etc/nginx/conf.d/virtual.conf service nginx reload echo "127.0.0.1 registry.feedao.com" >> /etc/hosts
測試:
[root@docker-base docker-temp]# curl registry.feedao.com
出現 "docker-registry server (dev)" 表明成功
第四步,使用本身的registry服務器
把本機鏡像tag一下:
docker tag centos-newssh registry.feedao.com/centos-newssh
把剛纔tag的鏡像Push到registry服務器上:
docker push registry.feedao.com/centos-newssh
第五步,換臺服務器配置hosts文件,好比個人registry服務器IP是192.168.56.101,
在另一臺服務器上192.168.56.102上配置hosts
echo "192.168.56.101 registry.feedao.com" >> /etc/hosts
而後執行:
docker pull registry.feedao.com/centos-newssh
建立容器:docker run -d -p 127.0.0.1:33306:22 -m 256M registry.feedao.com/centos-newssh
登錄:ssh root@127.0.0.1 -p 33306
密碼是:123456
這樣咱們的私服就利用起來了。