【Docker】制作Docker私有仓库

文章目录

  • [1. 安装私有镜像仓库](#1. 安装私有镜像仓库)
  • [2. 镜像仓库可视化](#2. 镜像仓库可视化)
  • [3. 参考资料](#3. 参考资料)

1. 安装私有镜像仓库

由于之后我们需要推送到私有镜像仓库,我们预先安装好,使用的是Docker公司开发的私有镜像仓库Registry。

  • 下载Registry的Docker镜像;

    shell 复制代码
    docker pull registry:2
  • 使用Docker容器运行Registry服务,需要添加环境变量REGISTRY_STORAGE_DELETE_ENABLED=true开启删除镜像的功能;

    shell 复制代码
    # --restart=always 表示开机启动
    docker run -p 5000:5000 --name registry2 \
    --restart=always \
    -e REGISTRY_STORAGE_DELETE_ENABLED="true" \
    -d registry:2
  • 修改Docker Daemon的配置文件,文件位置为/etc/docker/daemon.json,由于Docker默认使用HTTPS推送镜像,而我们的镜像仓库没有支持,所以需要添加如下配置,改为使用HTTP推送;

    json 复制代码
    {
      "insecure-registries": ["192.168.56.120:5000"]
    }

    修改ip地址为docker所在的地址,如果是本地也可以用localhost

  • 最后使用如下命令重启Docker服务

    shell 复制代码
    systemctl daemon-reload && systemctl restart docker

2. 镜像仓库可视化

由于私有镜像仓库管理比较麻烦,而docker-registry-ui有专门的页面可以方便地管理镜像,所以我们安装它来管理私有镜像仓库。

  • 下载docker-registry-ui的Docker镜像;

    shell 复制代码
    docker pull joxit/docker-registry-ui:static
  • 使用Docker容器运行docker-registry-ui服务;

    shell 复制代码
    docker run -p 8280:80 --name registry-ui \
    --link registry2:registry2 \
    -e REGISTRY_URL="http://registry2:5000" \
    -e DELETE_IMAGES="true" \
    -e REGISTRY_TITLE="Registry2" \
    -d joxit/docker-registry-ui:static
  • 随便找一个docker镜像来测试我们建的私有镜像仓库可用性(以busybox为例)

    shell 复制代码
    docker pull busybox
  • 给镜像busybox打上私有仓库的标签,并设置版本为v1.0

    shell 复制代码
    docker tag busybox localhost:5000/busybox:v1.0
  • 之后推送到私有镜像仓库去;

    shell 复制代码
    docker push localhost:5000/busybox:v1.0
  • 访问docker-registry-ui管理界面,即可查看到busybox镜像,地址:http://localhost:8280

3. 参考资料

我的文章:《如何查看一个Docker镜像有哪些版本.md》

我的文章:《Docker设置国内镜像源.md》

我的文章:《Docker快速入门实用教程.md》

我的文章:《Docker安装MySQL、Redis、RabbitMQ、Elasticsearch、Nacos等常见服务.md》

我的文章:《Docker安装Nacos服务.md》

我的文章:《如何修改Docker中的文件.md》

我的文章:《Docker容器间的连接或通信方式.md》

我的文章:《Docker安装的MySQL如何持久化数据库数据.md》

我的文章:《制作Docker私有仓库.md》

我的文章:《使用docker-maven-plugin插件构建发布推镜像到私有仓库.md》

我的文章:《解决Docker安装Elasticsearch后访问9200端口失败.md》


传送门:保姆式Spring5源码解析

欢迎与作者一起交流技术和工作生活

联系作者

相关推荐
九皇叔叔10 小时前
Kubernetes 资源管理方式详解:命令式与声明式管理
docker·容器·k8s
程序猿小郑16 小时前
Docker Compose 构建完整服务实战指南:从入门到最佳实践
docker·容器
行百里er19 小时前
5 分钟跑起 Redis(Docker 版)
redis·后端·docker
Mr.朱鹏20 小时前
Docker三剑客实战指南:Docker、Dockerfile 和 Docker Compose
python·docker·devops·dockerfile
鬼先生_sir20 小时前
Docker 完整教程
docker
java_logo20 小时前
Docker 一键部署 Jellyfin:快速搭建私有化媒体服务器
docker·私有化部署·jellyfin·硬件加速·媒体服务器·轩辕镜像·影音库
jianpeng的工程笔记1 天前
WeKnora 搭建研发 EDA 知识库:Docker 部署、RAG 与 Wiki 实践
docker·知识库·eda·rag
ZeroNews内网穿透1 天前
内网部署 Halo 建站,用 ZeroNews 免费内网穿透安全发布到公网(无公网 IP 也能 HTTPS 访问)
docker·https·内网穿透·nas·反向代理·halo·zeronews
九皇叔叔1 天前
K8S 资源菜单
docker·容器·kubernetes·k8s
wdfk_prog2 天前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros