docker 私有镜像服务器搭建

Posted spotatoman

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker 私有镜像服务器搭建相关的知识,希望对你有一定的参考价值。

1.准备一台服务器A(已安装docker, IP:192.168.39.111)

2.在服务器A上通过运行registry容器进行搭建

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

参数说明
-itd:在容器中打开一个伪终端进行交互操作,并在后台运行;
-v:把宿主机的/data/registry目录绑定 到 容器/var/lib/registry目录(这个目录是registry容器中存放镜像文件的目录),来实现数据的持久化;
-p:映射端口;访问宿主机的5000端口就访问到registry容器的服务了;
--restart=always:这是重启的策略,假如这个容器异常退出会自动重启容器;
--name registry:创建容器命名为registry,你可以随便命名;
registry:latest:这个是刚才pull下来的镜像;

3.在本地主机B上配置"不安全注册表" 即:http的连接(已安装docker,IP:192.168.39.215)

编辑该daemon.json文件,其默认位置 /etc/docker/daemon.json在Linux或C:\\ProgramData\\docker\\config\\daemon.jsonWindows Server上。如果您使用Docker Desktop for Mac或Docker Desktop for Windows,请单击Docker图标,选择 Preferences,然后选择+ Daemon

如果该daemon.json文件不存在,请创建它。添加一下内容后重启systemctl restart docker 假设文件中没有其他设置,则应具有以下内容:


  "insecure-registries" : ["myregistrydomain.com:5000"]

  mac 端是如下:

    技术图片

4.在本地主机B上测试push和pull

 

  1. 先对镜像进行标记(标记需加ip,否则报错):docker tag busybox  192.168.39.111:5000/bbx:v1
  2. push镜像:docker push 192.168.39.111:5000/bbx:v1
  3. 第二步若成功,便可pull 拉取下来: docker pull 192.168.39.111:5000/bbx:v1

总结:注意设置"不安全的注册表"是在推送的一端设置,不是在镜像服务器端

以上是关于docker 私有镜像服务器搭建的主要内容,如果未能解决你的问题,请参考以下文章

Docker的私有镜像仓库搭建

docker 私有仓库搭建以及用户认证

11-Docker-搭建私有仓库

使用Harbor搭建企业级私有docker仓库

如何搭建docker私有镜像仓库

阿里云搭建docker私有镜像仓库与SpringBoot项目推送远程镜像仓库