项目目录

  • registry

    • data

    • docker-compose.yml

项目构建

Docker Compose

version: '3.0'
services:
  registry:
    container_name: registry
    image: registry
    ports:
      - 10693:80
    volumes:
      - ./data:/var/lib/registry
    restart: always
    environment:
      REGISTRY_USERNAME: your-username
      REGISTRY_PASSWORD: your-password
      REGISTRY_STORAGE_DELETE_ENABLED: 'true'

常用操作

登录远程仓库

docker login registry.xxx.com:2023 -u yourusername -p yourpassword

镜像打标签

本地已经有一个打包好的aea_be_manage镜像,将它tag为一个新的远程仓库的image,并标注版本号

docker tag aea_be_manage:latest registry.xxx.com:2023/aea_be_manage:0.1

推送镜像到远程仓库

docker push registry.xxx.com:2023/aea_be_manage:0.1

删除远程镜像

推送删除后的镜像到 Registry(可选)

删除本地的镜像后,如果你希望在 Registry 上也删除这个镜像,你可以使用以下命令:

docker push --delete <镜像名称>:<标签>

这将删除 Registry 上指定标签的镜像。同样,请将 <镜像名称> 替换为镜像名称,<标签> 替换为标签。如果你之前删除了所有本地标签,并且希望在 Registry 上删除整个镜像,你可以执行以下命令:

docker rmi --no-prune <镜像名称> 
docker image prune -f

此过程将从 Registry 中删除指定的镜像。

解决http访问提示https相关问题

Mac系统

Mac系统中,打开docker客户端,在配置中找到如下位置,添加insecure-registries相关配置

Linux系统

#新建docker目录
mkdir -p /etc/docker

#新建daemon.json文件
vim /etc/docker/daemon.json

#在insecure-registries中增加你的仓库地址
{ "insecure-registries":["192.168.1.112", "example.yourregistry.com:2023"] }

#保存修改后,重启docker
systemctl restart docker

refers: