MacOS搭建docker本地私有镜像库

发布于:2024-05-09 ⋅ 阅读:(29) ⋅ 点赞:(0)

相关环境

macOS: bigsur 11.7.8
docker desktop: 4.22.0 
docker engine: 24.0.5

准备工作

本机已经安装好docker desktop,未安装的自行参考其他教程。如果不能翻墙,可以修改本地的镜像地址,可在docker desktop 设置中的docker engine中修改,如下图:

也可直接修改 ~/.docker/daemon.json文件,然后重启docker,如下图:

安装registry私有仓库

下载并运行 registry 私有仓库

docker run -d -p 5000:5000 --restart=always -v /opt/docker/registry:/var/lib/registry --name registry registry:latest 

 查看私有仓库中的镜像

curl 127.0.0.1:5000/v2/_catalog

修改 ~/.docker/daemon.json文件,增加insecure-registries,以此来避免docker对http的校验,地址可以设为域名或者其他内网地址,供其他用户使用。

 至此本地私有镜像库已安装完成,目前没有设置用户密码登安全设置,可参考其他教程进行设置。

安装Registry WebUI

为了查看私有库里的镜像更加方便,可以安装webui,通过浏览器来查看镜像。

下载并运行 Docker Registry WebUI

docker run -d -p 5001:80 --restart=always --env ENV_DOCKER_REGISTRY_HOST=172.17.0.2 --env ENV_DOCKER_REGISTRY_PORT=5000 --name registry-web konradkleine/docker-registry-frontend:v2

 注意:其中ENV_DOCKER_REGISTRY_HOST不能填宿主机IP(否则报503错误),要填registry容器的IP地址。

浏览器访问:http://localhost:5001/,可以查看私有库下的所有镜像

本地上传镜像到私有库

本地上传需要打包时,镜像名称包含本地私有库地址,例如:

### 最后的点为Dockerfile所在目录
docker build -t 127.0.0.1:5000/test-app:1.0.0 .

打包完成后推送至私有库

docker push 127.0.0.1:5000/test-app:1.0.0