docker私有仓库的建立
使用官方提供的registry镜像,可以达到建立私有镜像库的目的
启动服务
1 | docker run -d -p 5000:5000 --restart=always --name registry registry:2 |
假设本地已有python:2镜像,首先需修改image tag
1 | docker tag python:2 localhost:5000/python |
上传镜像
1 | docker push localhost:5000/python |
拉取镜像
1 | docker pull localhost:5000/python |
设置服务密码
设置密码
1
2mkdir auth
docker run --entrypoint htpasswd registry:2 -Bbn testuser testpassword > auth/htpasswd重新启动服务
1
2
3
4
5
6
7
8
9docker run -d \
-p 5000:5000 \
--restart=always \
--name registry \
-v `pwd`/auth:/auth \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
registry:2登录
1
docker login myregistrydomain:5000
使用docker-compose
1 | registry: |
远程私有库
对于非本地私有库,docker默认只支持https连接,或者修改本地机器的设置,在/etc/docker/daemon.json中增加1
{"incecure-registries": ["myregistry:example.com:5000"]}
然后重启docker服务