手把手教你用Docker部署Registry私有镜像仓库

为什么需要自建Registry

团队内部或跨服务器分发镜像时,频繁推送到Docker Hub既不安全又受网速限制。
自建一个私有Registry可以完全控制镜像存储、访问权限,并且拉取速度极快。
Docker官方提供了registry镜像,几行命令就能跑起来。

准备工作

  • 一台Linux服务器(CentOS 7+或Ubuntu 18.04+),已安装Docker和docker-compose(可选)。
  • 一个域名(如registry.example.com)并解析到服务器IP。
  • 为域名申请SSL证书(Let's Encrypt免费证书即可),或使用自签名证书(需客户端配置跳过验证)。
  • 服务器防火墙开放443端口(HTTPS)和5000端口(如果不用HTTPS直接暴露)。
  • 确认Docker服务运行正常:systemctl status docker

启动Registry容器

最简方式直接运行容器,将数据持久化到宿主机,避免容器删除后镜像丢失。

mkdir -p /data/registry

docker run -d \
  --restart=always \
  -p 5000:5000 \
  -v /data/registry:/var/lib/registry \
  --name registry \
  registry:2

此时Registry已监听本机5000端口(HTTP)。
如果需要HTTPS,需挂载证书并指定配置。

配置HTTPS(推荐)

将证书和私钥放在/data/certs/下,例如domain.crtdomain.key,然后启动容器时添加证书路径和环境变量:

docker run -d \
  --restart=always \
  -p 443:5000 \
  -v /data/registry:/var/lib/registry \
  -v /data/certs:/certs \
  -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
  -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
  --name registry-ssl \
  registry:2

访问https://registry.example.com/v2/_catalog应返回{"repositories":[]}

测试推拉镜像

  1. 在客户端给本地镜像打标签:docker pull nginx:alpine && docker tag nginx:alpine registry.example.com/nginx:alpine
  2. 登录Registry(如果配置了认证):docker login registry.example.com
  3. 推送镜像:docker push registry.example.com/nginx:alpine
  4. 从其他主机拉取:docker pull registry.example.com/nginx:alpine

若未配置HTTPS且Docker守护进程未配置insecure-registries,推送会报错http: server gave HTTP response to HTTPS client
解决办法见下文。

常见问题与避坑

Q:客户端报错“http: server gave HTTP response to HTTPS client”
A:Registry默认要求HTTPS。若仅测试用,可在客户端Docker配置中添加"insecure-registries": ["registry.example.com"](或IP加端口),然后重启Docker:systemctl restart docker

Q:容器重启后镜像丢失
A:启动容器时必须使用-v/var/lib/registry挂载到宿主机持久目录。

Q:如何限制存储大小或启用认证?
A:通过挂载自定义config.yml配置storage.delete.enabledauth.htpasswd等。官方文档有详细说明。

Q:推送到一半网络中断怎么办?
A:Registry支持断点续传,重新执行docker push即可覆盖同标签的层。

总结

从零搭建私有Docker Registry只需要几行命令,但生产环境一定要开启HTTPS并考虑认证与存储限制。
遇到异常时,先查看容器日志docker logs registry,大多问题都能定位。
希望本文能帮你顺利跑起自己的镜像仓库。

分享到:
上一篇
Linux服务器系统日志分析实操指南
下一篇
服务器家用服务器搭建方案:零基础也能上手
1
系统公告

泽御云五一特惠活动🔥

泽御云持证合规运营,资质齐全可查,长久稳定! 五一限时多重福利同步开启: ✅ 香港 2 核 2G 云服务器超值拼团,低价入手团长免费 ✅ 4 核 4G 多机房年付拼团,性价比拉满 ✅ 内蒙古新区限时 7 折(zeyuyunnmg)特惠,专属优惠码锁价续费 ✅ 全站通用 75 折优惠,老用户充值享专属赠金 官方站点:zeyuyun.com 合规资质齐全|售后有保障|活动限时错过不再有
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意