Contents

Docker私有仓库搭建

6月,中国大陆屏蔽了Docker仓库,NAS上通过Docker装各类应用基本上是白搭了。好在还有VPS,除了通过代理科学上网来访问Docker公共库外,从VPS搭建一个Docker私有仓库,家里NAS使用Docker私有仓库也是一个不错的办法。

VPS搭建私有仓库

VPS上,控制台安装Docker Registry:

docker run -id -p \
5000:5000 \
-v /opt/docker_registry/registry/:/var/lib/registry \
--privileged=true \
--restart=always \
--name=registry \
registry:latest
  • -v /opt/docker_registry/registry/:/var/lib/registry \ 是将容器内保存镜像的文件夹映射到本地“/opt/docker_registry/registry/”中。

NAS端配置使用私有仓库

在需要使用私有仓库的机器上配置Docker,时期能够使用私有仓库。编辑(或创建)etc/docker/daemon.json

{
  "insecurt-registries":[your-registry-url:5000]
}
  • your-registry-url:5000 需要替换成VPS的地址。

重启Docker服务

systemctl restart docker

在本地或其他机器上运行以下命令,确保能够连接到自建的Docker Registry:

docker login your-registry-domain:5000

现在,已经成功搭建了一个私有仓库。

如何使用

推送镜像

VPS端可以拉取公共库的镜像,再推入私有库供其他设备使用。 推送本地镜像到私有仓库的命令如下:

# 标记本地镜像 docker tag image-name your-registry-url:5000/image-name
docker tag image-name your-registry-url:5000/image-name 
# 推送镜像到私有仓库 docker push your-registry-url:5000/image-name
docker push your-registry-url:5000/image-name 
  • 将image-name替换为要使用的镜像名称,your-registry-url:5000替换为私有仓库的URL

拉取镜像

NAS端可以拉取私有库的镜像使用

docker pull your-registry-url:5000/image-name:latest