当前位置: 首页 > news >正文

8.docker仓库

文章目录

  • Docker仓库
    • 本地私有仓库
    • Docker Harbor
      • Docker harbor部署
      • 访问页面
      • 创建用户下载私有仓库镜像
      • harbor同步

Docker仓库

本地私有仓库

##先下载   registry 镜像docker pull registry
##修改配置文件,在   daemon.json 文件中添加私有镜像仓库地址vim /etc/docker/daemon.json{"insecure-registries": ["http://192.168.242.66:5000"],   ##注意在末尾添加  ,"registry-mirrors": ["镜像加速URL"]
}

在这里插入图片描述

##重启服务systemctl restart docker.service
##运行  registry  容器docker run -itd -v /data/registry:/var/lib/registry -p 5000:5000 --restart=always --name registry registry:latest

在这里插入图片描述

###为要上传的镜像重新打标签docker tag nginx:centos7 192.168.242.66:5000/nginx:v1

在这里插入图片描述

##上传镜像到私有仓库docker push 192.168.242.66:5000/nginx:v1

在这里插入图片描述

###在网页中查看所有的镜像http://192.168.242.66:5000/v2/_catalog###查看仓库中某一个镜像的tag标签http://192.168.242.66:5000/v2/nginx/tags/list

在这里插入图片描述
在这里插入图片描述

###在另外一个docker服务器中,拉去这个仓库中是镜像##也要先修改配置文件##修改配置文件,在   daemon.json 文件中添加私有镜像仓库地址vim /etc/docker/daemon.json{"insecure-registries": ["http://192.168.242.66:5000"],   ##注意在末尾添加  ,"registry-mirrors": ["镜像加速URL"]
}##重启服务systemctl restart docker.service
##在配置文件修改完成后,拉取镜像docker pull 192.168.242.66:5000/nginx:v1

在这里插入图片描述

Docker Harbor

Docker harbor部署

##首先,先修改   daemon.json  配置文件vim /etc/docker/daemon.json{"insecure-registries": ["http://192.168.242.67"],   ##注意在末尾添加  ,"registry-mirrors": ["镜像加速URL"]
}##重启Docker服务
systemctl restart docker 
##上传  Docker harbor 安装文件并安装
##安装  Docker-compose  服务cd /opt/tar xf harbor-offline-installer-v1.10.18.tgzchmod +x docker-compose
mv /opt/docker-compose /usr/local/bin/docker-compose
docker-compose --version

在这里插入图片描述

##修改  harbor  配置文件cd /opt/harborvim  harbor.yml---第5行---
hostname: 192.168.242.67---第13行---
注释掉https的配置项---第27行
harbor_admin_password: Harbor12345
##记住harbor的密码

在这里插入图片描述

##先做前其准备或者之间安装 harborcd /opt/harbor./prepare./install.sh        ##自动安装###查看所有的镜像是否安装成功docker-compose ps

在这里插入图片描述
在这里插入图片描述

访问页面

###在网页中登陆到 harborhttp://192.168.242.67用户:admin
密码:Harbor12345##就可以看见页面

在这里插入图片描述

##在页面中创建项目---》项目
---》新建项目
--》项目名称,其他默认,如果要创建公开仓库,可以点击公开

在这里插入图片描述

###上传镜像文件到  harbor的私有和共有仓库
##先修改标签docker tag centos:7 192.168.242.67/library/centos:test01docker tag centos:7 192.168.242.67/myimages/centos:test02##要上传镜像到  harbor,需要先登录docker login -u admin -p Harbor12345 http://192.168.242.67##上传镜像docker push 192.168.242.67/library/centos:test01docker push 192.168.242.67/myimages/centos:test02

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建用户下载私有仓库镜像

--》用户管理
--》创建用户
--》按照要求填写选项

在这里插入图片描述

##对应的项目中添加用户--》项目
--》点击项目名
--》成员,添加用户
--》为用户选择角色(决定用户的权限)

在这里插入图片描述

###在另外一个docker服务器中,拉取这个harbor仓库的镜像##先修改配置文件vim /etc/docker/daemon.json{"insecure-registries": ["http://192.168.242.67"],   ##注意在末尾添加  ,"registry-mirrors": ["镜像加速URL"]
}##重启Docker服务
systemctl restart docker
###先利用创建的用户登陆 harbordocker login -u lisi -p Lisi12345 http://192.168.242.67##利用lisi 在myimages项目中的维护人员身份,来去镜像文件docker pull 192.168.242.68/myimages/nginx:v2

在这里插入图片描述

###退出  lisi的登陆用户docker logoutdocker login -u zhangsan -p Zhangsan123 http://192.168.242.67##尝试利用  zhangsan  的身份拉取镜像,成功docker pull 192.168.242.68/myimages/nginx:v2

在这里插入图片描述

###利用这连个用户,尝试上传镜像docker tag 192.168.242.66:5000/nginx:v2 192.168.242.68/myimages/ngin:v3
##先修改标签docker push 192.168.242.68/myimages/ngin:v3
##在上传镜像

在这里插入图片描述
在这里插入图片描述

  • 结论

    • 拉取操作时:

      • 公开项目的镜像可以被任意用户拉取
      • 私有项目的镜像必须先登陆项目对应的相关用户才能拉取
    • 上传操作时:

      • 必须先登陆相关项目的用户,且登陆的用户具有上传权限的角色才能够推送镜像

harbor同步

###在另外的一台的docker服务器中创建harbor服务##首先,先修改   daemon.json  配置文件vim /etc/docker/daemon.json{"insecure-registries": ["http://192.168.242.66"], ##注意在末尾添加  ,"registry-mirrors": ["镜像加速URL"]
}##重启Docker服务
systemctl restart docker
##在harbor的配置文件中vim harbor.yml---第5行---
hostname: 192.168.242.66---第13行---
注释掉https的配置项---第27行
harbor_admin_password: Harbor12345
##记住harbor的密码
##在web中访问另外一台 harborhttp://192.168.242.66

在这里插入图片描述

###仓库管理--》仓库管理
--》新建目标      提供者  : harbor      目标名:另一个harborIP    目标URL:另一个harborIP访问ID:admin     访问密码:就是密码
--》测试链接   成功就确认##两个harbor之间都要互相做对方的仓库管理

在这里插入图片描述

##两个 harbor  进行复制管理,首先创建   push  是触发动作,实现镜像同步--》复制管理
--》新建规则
--》按照要求进行填写        名称:对方harbor的IP     复制模式:按要求选目标的Registry:选择创建的仓库管理触发模式:事件驱动勾选  删除本地资源时,删除远程资源

在这里插入图片描述

##在192.168.242.68上  上传镜像,查看另一个harbor是否同步docker tag nginx:latest 192.168.242.68/myimages/nginx:v8docker login -u admin -p Harbor12345 http://192.168.242.68docker push 192.168.242.68/myimages/nginx:v8

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

##在 192.168.242.66 的主机上创建  pull  来去来复制镜像--》复制管理
--》新建规则
--》按照要求进行填写        名称:对方harbor的IP     复制模式:按要求选目标的Registry:选择创建的仓库管理触发模式:定时Cron String 0 */1 * * * *覆盖勾选

在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/103968.html

相关文章:

  • 价值 1k 嵌入式面试题-计算机网络 OSI
  • spring boot去除get post空格
  • 设计模式四:单例模式(Singleton)
  • 《水经注地图服务》发布的影像数据如何在OsgEarth中调用
  • css滤镜:drop-shadow
  • java ThreadLocal
  • MySQL高级篇第6章(索引的数据结构)
  • Unity 性能优化三:动画模块、物理模块
  • 延迟函数
  • IBM报告:2023数据泄露平均成本将达到445万美元
  • 20.3 HTML 表格
  • flutter项目运行时一直卡在Running Gradle task ‘assembleDebug‘解决办法
  • “深入理解Spring Boot:从入门到精通“
  • IP 工具
  • Linux - 进程概念(进程状态、优先级)
  • k8s概念-deployment
  • Flutter 调试工具篇 | 壹 - 使用 Flutter Inspector 分析界面
  • 什么是云原生和 CNCF?
  • 数据结构——单链表
  • 微信小程序手写签字版
  • 机器学习十大经典算法
  • HCIP-datacom-821题库真题和机构资料
  • javaSE,javaEE,javaME的区别
  • mysql innodb一些知识点
  • Android 面试题 应用对内存是如何限制 八
  • 赛车游戏——【极品飞车】(内含源码inscode在线运行)
  • 无人机调试笔记——常见参数
  • 如何快速实现多人协同编辑?
  • ThinkPHP 一对多关联
  • C++基础篇(二)基本数组及示例