通过docker和ctr创建docker registry

文章详细介绍了如何使用docker命令和ctr命令来创建并配置DockerRegistry,包括设置端口映射、存储文件挂载、启用身份验证以及使用HTPASSWD进行权限管理。同时提到了使用REGISTRY_HTTP_ADDR环境变量改变监听端口,并展示了查询Registry镜像的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过docker和ctr创建docker registry

链接: 官方文档

docker创建docker registry

例:

docker run -d \
  --restart=always \
  --name registry \
  -v /registry/etc/registry/auth:/etc/registry/auth \
  -v /registry/var/lib/registry:/var/lib/registry \
  -e REGISTRY_AUTH=htpasswd \
  -e REGISTRY_AUTH_HTPASSWD_REALM="Registry Realm" \   
  -e REGISTRY_AUTH_HTPASSWD_PATH=/authpasswd \
  -p 5000:5000 \
  registry:2

docker registry在容器内默认的监听端口为5000,如果需要更改容器内的监听端口,通过环境变量REGISTRY_HTTP_ADDR来控制

docker run -d \
  -e REGISTRY_HTTP_ADDR=0.0.0.0:5001 \
  -p 5000:5001 \
  --name registry-test \
  registry:2

外部监听端口,通过 -p 进行端口映射

存储文件挂载:

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

docker registry的默认镜像存储路径是:/var/lib/registry

启动docker registry身份验证:

docker 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 \
  -v "$(pwd)"/certs:/certs \
  -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/domain.crt \
  -e REGISTRY_HTTP_TLS_KEY=/certs/domain.key \
  registry:2

ctr 创建docker registry

例:

ctr run -d \
  --net-host \
  --mount type=bind,src=/registry/etc/registry/auth,dst=/etc/registry/auth,options=rbind:rw \
  --mount type=bind,src=/registry/var/lib/registry,dst=/var/lib/registry,options=rbind:rw \
  --env REGISTRY_AUTH=htpasswd \
  --env REGISTRY_AUTH_HTPASSWD_REALM="Registry Realm" \
  --env REGISTRY_AUTH_HTPASSWD_PATH='/etc/registry/auth/passwd' \   
  registry:2 registry

–net-host 将会在本机监听与容器内相同的端口。可以使用REGISTRY_HTTP_ADDR环境变量来控制监听的端口。

docker registry镜像查询:

curl -i -s --user "admin" http://127.0.0.1:5000/v2/_catalog
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值