dockerhub私有仓库搭建

发布时间 2023-06-27 18:29:15作者: lshan

1.安装以及使用:

# 安装
sudo mkdir /opt/docker/registry sudo docker run -d -p 5000:5000 -v /opt/docker/registry:/var/lib/registry registry 用 curl 查看仓库中的镜像。 $ curl 127.0.0.1:5000/v2/_catalog {"repositories":["tomcat"]} 使用 docker tag 将 tomcat:latest 这个镜像标记为 127.0.0.1:5000/tomcat:latest。 格式为:docker tag IMAGE[:TAG] [REGISTRY_HOST[:REGISTRY_PORT]/]REPOSITORY[:TAG] sudo docker tag tomcat:latest 127.0.0.1:5000/tomcat:latest 使用 docker push 上传标记的镜像。 sudo docker push 127.0.0.1:5000/tomcat:latest

 

2.注意事项

如果你不想使用 127.0.0.1:5000 作为仓库地址,比如想让本网段的其他主机也能把镜像推送到私有仓库。你就得把例如 192.168.199.100:5000 这样的内网地址作为私有仓库地址,这时你会发现无法成功推送镜像。

这是因为 Docker 默认不允许非 HTTPS 方式推送镜像。我们可以通过 Docker 的配置选项来取消这个限制,或者查看下一节配置能够通过 HTTPS 访问的私有仓库。

 

3. 仓库配置

对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)

{
  "registry-mirrors": [
    "https://registry.docker-cn.com"
  ],
  "insecure-registries": [
    "192.168.110.158:5000"
  ]
}

 

4.安装 Docker Registry WebUI

私服安装成功后就可以使用 docker 命令行工具对 registry 做各种操作了。然而不太方便的地方是不能直观的查看 registry 中的资源情况。下面我们安装 Docker Registry WebUI 工具。

--env ENV_DOCKER_REGISTRY_HOST=192.168.110.158(docker register 安装地址)
--env ENV_DOCKER_REGISTRY_PORT=5000(docker register 安装地址端口) 
sudo docker run -d -p 8080:80 --env ENV_DOCKER_REGISTRY_HOST=192.168.110.158 --env ENV_DOCKER_REGISTRY_PORT=5000 konradkleine/docker-registry-frontend:v2

运行成功后在浏览器访问:

http://192.168.110.158:8080