ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

HM-SpringCloud微服务系列3.5【Docker镜像仓库】

2022-01-21 01:03:21  阅读:234  来源: 互联网

标签:8080 仓库 SpringCloud nginx 3.5 registry HM 镜像 docker


1 常见镜像仓库服务

image

2 搭建私有镜像仓库

2.1 简化版镜像仓库(不演示)

  • 搭建镜像仓库可以基于Docker官方提供的DockerRegistry来实现。
  • 官网地址:https://hub.docker.com/_/registry
  • Docker官方的Docker Registry是一个基础版本的Docker镜像仓库,具备仓库管理的完整功能,但是没有图形化界面。
  • 搭建方式比较简单,命令如下(镜像仓库服务默认5000端口):
    docker run -d \
    	--restart=always \
    	--name registry	\
    	-p 5000:5000 \
    	-v registry-data:/var/lib/registry \
    	registry
    
  • 命令中挂载了一个数据卷registry-data到容器内的/var/lib/registry 目录,这是私有镜像库存放数据的目录。
  • 访问http://YourIp:5000/v2/_catalog 可以查看当前私有镜像服务中包含的镜像。

2.2 带有图形化界面的镜像仓库(演示)

2.2.1

注意:在此2.2之前需要先进行2.3配置Docker信任地址

带有图形化界面的版本不是docker官方的,是第三方开发的,属于官方简化版镜像仓库额外的服务。
使用DockerCompose部署带有图象界面的DockerRegistry,命令如下(官方简化版镜像仓库服务&第三方图像化界面服务的组合部署):

version: '3.0'
services:
  registry:
    image: registry
    volumes:
      - ./registry-data:/var/lib/registry
  ui:
    image: joxit/docker-registry-ui:static
    ports:
      - 8080:80
    environment:
      - REGISTRY_TITLE=haifei私有docker镜像仓库
      - REGISTRY_URL=http://registry:5000
    depends_on:
      - registry

2.2.2

"insecure-registries":["http://192.168.2.109:8080"]
image
image

2.2.3

  1. 在/tmp/目录下新建文件夹registry-ui
    image
  2. 在/tmp/registry-ui/目录下新建docker-compose.yml
    image
  3. 利用filezilla工具将上面的部署命令粘贴进docker-compose.yml
    image
    image
    image
    image
  4. 通过命令docker-compose up -d部署服务
    image
  5. 通过命令docker-compose logs -f查看日志
    image
    可以看到已经启动成功了
    现在本地浏览器远程访问http://192.168.2.109:8080/测试一下
    image
    image

2.3 配置Docker信任地址

我们的私服采用的是http协议,默认不被Docker信任,所以需要做如下配置:

# 打开要修改的文件
vi /etc/docker/daemon.json
# 添加内容:
"insecure-registries":["http://YourIp:8080"]
# 重加载
systemctl daemon-reload
# 重启docker
systemctl restart docker

3 推送 & 拉取镜像

3.1 tag

  • 推送镜像到私有镜像服务必须先tag
  • 重新tag本地镜像,名称前缀为私有仓库的地址http://YourIp:8080/
  • 命令:docker tag nginx:latest 192.168.2.109:8080/nginx:1.0,此处以nginx为例
  • 含义:将原先的nginx:latest重命名为新的192.168.2.109:8080/nginx:1.0
    image
    image
  • 可以看到192.168.2.109:8080/nginx:1.0nginx:latest的ID一样,所以两者实际上是一样的;也可以说该镜像只有一份实物,但有两个名字

3.2 向镜像仓库推送镜像

  • 命令:docker push 192.168.2.109:8080/nginx:1.0
    image
    image
    image

3.3 从镜像仓库拉取镜像

  • 命令:docker pull 192.168.2.109:8080/nginx:1.0
  • 删除原有的192.168.2.109:8080/nginx:1.0镜像(实际是nginx:latest镜像的复制)
    image
  • 删除nginx:latest镜像(期间发现了依赖于该镜像的容器mn,先删除mn再删除nginx)
    image
    image
    image
  • 拉取新镜像
    image

4 小结

image

标签:8080,仓库,SpringCloud,nginx,3.5,registry,HM,镜像,docker
来源: https://www.cnblogs.com/yppah/p/15817567.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有