Docker Registry web私有化镜像仓库

Docker Registry web私有化镜像仓库

Containers

ImageNamePublished Ports
hyper/docker-registry-web:v0.1.2registry-web-1808018080:8080
registry:2.6.2registry-18501850:5000

registry:2.6.2

docker镜像下载

Docker Hub代理拉取镜像
docker pull registry:2.6.2docker pull dockerproxy.com/registry:2.6.2
docker tag dockerproxy.com/registry:2.6.2 registry:2.6.2

Volumes

Host/volumePath in container
/share/Container/registry/auth/auth
/share/Container/registry/data/var/lib/registry

ENV

变量名称变量值备注
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
REGISTRY_AUTHhtpasswd
REGISTRY_AUTH_HTPASSWD_REALMRegistry Realm
REGISTRY_AUTH_HTPASSWD_PATH/auth/htpasswd

Ports

# 查看端口占用
netstat -tunlp | grep 端口号

运行使用

http://192.168.1.x:1850/v2/_catalog
{"repositories":[]}

hyper/docker-registry-web:v0.1.2

docker镜像下载

Docker Hub代理拉取镜像
docker pull docker-registry-web:v0.1.2docker pull dockerproxy.com/docker-registry-web:v0.1.2
docker tag dockerproxy.com/docker-registry-web:v0.1.2 docker-registry-web:v0.1.2

Volumes

Host/volumePath in container
/share/Container/registry-web/data/data

ENV

JAVA_HOME/usr/lib/jvm/java-7-openjdk-amd64
PATH/usr/share/tomcat7/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
DEBIAN_FRONTENDnoninteractive
CATALINA_HOME/usr/share/tomcat7
CATALINA_BASE/var/lib/tomcat7
CATALINA_OPTS-Djava.security.egd=file:/dev/./urandom
REGISTRY_URLhttp://192.168.0.x:1850/v2
REGISTRY_NAME192.168.0.x:1850
REGISTRY_TRUST_ANY_SSLTRUE
REGISTRY_BASIC_AUTHYWRtaW46MTIzNDU2base64encode(admin:123456)=YWRtaW46MTIzNDU2
https://tool.lu/encdec/

【Web】HTTP基本认证之 Basic Auth
https://www.cnblogs.com/h–d/p/13150050.html
说明:base64encode(admin:123456)=YWRtaW46MTIzNDU2

Ports

# 查看端口占用
netstat -tunlp | grep 端口号

运行使用

http://192.168.1.x:18080/

用户认证(Registry)

创建用户

/auth 
htpasswd -Bbn cxloge password > /auth/htpasswd

docker login

docker login -u cxloge -p password 192.168.1.x:1850
PS C:\Users\cxloge> docker login -u cxloge -p password 192.168.1.x:1850
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get "https://192.168.1.x:1850/v2/": http: server gave HTTP response to HTTPS client
PS C:\Users\cxloge>

daemon.json添加insecure-registries的http认证

# ​查找docker配置文件 ps -ef|grep docker 
# ​root     18925     1  4 18:11 ?        00:06:04 /var/packages/Docker/target/usr/bin/dockerd --config-file /var/packages/Docker/etc/dockerd.json
cat /var/packages/Docker/etc/dockerd.json # 群晖
cat /etc/docker/daemon.json   # linux
cat C:\Users\cxloge\.docker\daemon.json # windowns

{
"insecure-registries" : [  "192.168.0.x:1850","192.168.1.x:1850" ]
}

Login Succeeded

PS C:\Users\cxloge> docker login -u cxloge -p password 192.168.1.x:1850
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
[2022-11-26T09:06:35.129638200Z][docker-credential-desktop][W] Windows version might not be up-to-date: The system cannot find the file specified.
Login Succeeded

docker push 推送到私有docker镜像仓库

PS C:\Users\cxloge> docker tag postgres:14.5 192.168.1.x:1850/postgres:14.5
PS C:\Users\cxloge> docker push 192.168.1.x:1850/postgres:14.5
[2022-11-26T09:27:18.220429200Z][docker-credential-desktop][W] Windows version might not be up-to-date: The system cannot find the file specified.
The push refers to repository [192.168.1.x:1850/postgres]
d257da5f6373: Pushed
751a8c48eac9: Pushed
cfb208c4c6b3: Pushed
ad08e1062db6: Pushed
4cae76b22ab3: Pushed
4f9460380916: Pushed
466e4e8c2b3e: Pushed
20eaa932cf88: Pushed
c0f17a6a224d: Pushed
e0d2bd2355ac: Pushed
c7355294a3c3: Pushed
e1a930a711c4: Pushed
a12586ed027f: Pushed
14.5: digest: sha256:cd52086b23d9d2ecfe91c25d7570b1368242f151f4aacddf6860f827a22334ac size: 3039

查看Web Registry镜像推送

repositories

http://192.168.1.x:1850/v2/_catalog
{"repositories":["postgres"]}

repositories
Web Registry - Image history

http://192.168.1.x:18080/repo/tag/postgres/14.5

Web Registry

FAQ:

http: server gave HTTP response to HTTPS client

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要配置Docker私有化镜像仓库地址,你可以按照以下步骤进行操作: 1. 安装Docker Registry:首先,在你的服务器上安装Docker Registry。可以使用官方的Docker Registry镜像来运行私有仓库。 ``` docker run -d -p 5000:5000 --restart=always --name registry registry:2 ``` 这将在本地的5000端口运行Docker Registry,并将其命名为"registry"。 2. 配置Docker Daemon:接下来,你需要配置Docker Daemon以允许使用私有仓库。编辑Docker Daemon配置文件(通常位于`/etc/docker/daemon.json`)并添加以下内容: ```json { "insecure-registries": ["your-registry-address:5000"] } ``` 将"your-registry-address"替换为你的私有仓库的地址。保存并关闭文件。 3. 重启Docker Daemon:重启Docker Daemon以使配置生效。 ``` sudo systemctl restart docker ``` 4. 推送和拉取镜像:现在,你可以使用私有仓库地址推送和拉取镜像。使用以下命令将一个镜像推送到私有仓库: ``` docker tag image-name your-registry-address:5000/image-name docker push your-registry-address:5000/image-name ``` 将"image-name"替换为要推送的镜像名称,"your-registry-address"替换为你的私有仓库的地址。 要从私有仓库中拉取镜像,使用以下命令: ``` docker pull your-registry-address:5000/image-name ``` 将"your-registry-address"替换为你的私有仓库的地址,image-name"替换为要拉取的镜像名称。 这样,你就成功配置了Docker私有化镜像仓库地址。记得在实际使用中替换相关参数为你自己的值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值