仓库的概念也就是用于存储,docker仓库用于存储镜像。

镜像构建完成后,很容易可以在宿主机上运行,但是如果要在其他服务器上运行,则需要考虑镜像的分发,存储的问题。

共有/私有/仓库

Docker Registry有两种形式

  • 公开,开放给所有用户,提供给所有用户搜索,拉取,提交,更新镜像,还免费保管用户镜像数据。

    • 此类服务受限于网络限制,无法及时立即获取所需镜像,简单说就是需要用什么得现下载,得看网速
    • 优点是可以获取绝大部分公开的镜像,方便使用
  • 私有范围的Registry服务,用在学校,企业内网的研发环境
    • 局域网环境,保证了镜像拉取速度
    • 保证核心镜像数据安全
    • 存在镜像不丰富问题

公开服务仓库

最常见的Registry是Docker Hub,也是docker默认允许用户管理镜像的Registry服务,拥有大量高质量的官方镜像。

由于网络地域原因,公开服务在国内访问较慢,也就出现了针对镜像服务的加速器。

使用加速器,可以从国内的地址获取Docker Hub的镜像,速度会快很多。

私有服务仓库

除了私用公开服务外,还可以在自己本地搭建私有Docker Registry。

开源的Docker Registry镜像只提供了Docker Registry API的功能,没有图形化功能。

1.部署docker-harbor

步骤

1. 安装docker-compose工具
2. 下载harbor安装包
3. 修改harbor配置
4. 自动化安装

安装docker-compose

yum install docker-compose -y

[root@docker-200 /www.yuchaoit.cn/test_dockerfile/tomcat_web/web_base]#docker-compose version
docker-compose version 1.18.0, build 8dd22a9
docker-py version: 2.6.1
CPython version: 3.6.8
OpenSSL version: OpenSSL 1.0.2k-fips 26 Jan 2017

上传harbor安装包

[root@docker-200 /www.yuchaoit.cn]#ll
total 633852
-rw-r--r-- 1 root root 32749651 Aug 25 05:02 all-game.tgz
-rw-r--r-- 1 root root 616312579 Aug 27 20:03 harbor-offline-installer-v1.9.0-rc1.tgz
drwxr-xr-x 6 root root 114 Aug 23 00:08 jd
drwxr-xr-x 5 root root 59 Aug 27 20:03 test_dockerfile
drwxr-xr-x 3 root root 98 Aug 22 23:40 xiaoniao
drwxr-xr-x 7 root root 153 Aug 23 20:42 yunpan 解压
[root@docker-200 /www.yuchaoit.cn]#ls
all-game.tgz harbor harbor-offline-installer-v1.9.0-rc1.tgz jd test_dockerfile xiaoniao yunpan
[root@docker-200 /www.yuchaoit.cn]#cd harbor/
[root@docker-200 /www.yuchaoit.cn/harbor]#
[root@docker-200 /www.yuchaoit.cn/harbor]#ls
harbor.v1.9.0.tar.gz harbor.yml install.sh LICENSE prepare
[root@docker-200 /www.yuchaoit.cn/harbor]# 修改harbor.yaml配置文件
[root@docker-200 /www.yuchaoit.cn/harbor]#grep -E '10.0.0.200|yuchao' harbor.yml
hostname: 10.0.0.200
harbor_admin_password: www.yuchaoit.cn # 安装,一键自动化安装的过程
[root@docker-200 /www.yuchaoit.cn/harbor]#./install.sh [Step 0]: checking installation environment ... Note: docker version: 20.10.17 Note: docker-compose version: 1.18.0 [Step 1]: loading Harbor images ... # 安装结果 ----Harbor has been installed and started successfully.---- Now you should be able to visit the admin portal at http://10.0.0.200.
For more details, please visit https://github.com/goharbor/harbor . [root@docker-200 /www.yuchaoit.cn/harbor]#

访问harbor

检查harbor进程

登录信息

admin
www.yuchaoit.cn

创建项目

修改docker配置,信任自建仓库

[root@docker-200 /www.yuchaoit.cn/harbor]#cat  /etc/docker/daemon.json
{
"registry-mirrors" : [
"https://ms9glx6x.mirror.aliyuncs.com"
],
"insecure-registries":["http://10.0.0.200"]
}
[root@docker-200 /www.yuchaoit.cn/harbor]#
[root@docker-200 /www.yuchaoit.cn/harbor]#
[root@docker-200 /www.yuchaoit.cn/harbor]#systemctl daemon-reload
[root@docker-200 /www.yuchaoit.cn/harbor]#
[root@docker-200 /www.yuchaoit.cn/harbor]#systemctl restart docker
[root@docker-200 /www.yuchaoit.cn/harbor]#

推送本地镜像(修改镜像tag)

镜像要推送到仓库,名字上有要求
harbor地址/项目名/镜像名:版本 [root@docker-200 /www.yuchaoit.cn/harbor]#docker tag nginx:1.17.9 10.0.0.200/my_harbor01/nginx:1.17.9
[root@docker-200 /www.yuchaoit.cn/harbor]#docker images |grep nginx
centos7_nginx 1.20.1 f20ce96eb5be 22 hours ago 262MB
10.0.0.200/my_harbor01/nginx 1.17.9 5a8dfb2ca731 2 years ago 127MB
nginx 1.17.9 5a8dfb2ca731 2 years ago 127MB
goharbor/nginx-photon v1.9.0 492e9528214c 2 years ago 43.2MB
[root@docker-200 /www.yuchaoit.cn/harbor]# 登录harbor
[root@docker-200 /www.yuchaoit.cn/harbor]#
[root@docker-200 /www.yuchaoit.cn/harbor]#docker login 10.0.0.200
Username: admin
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded
[root@docker-200 /www.yuchaoit.cn/harbor]# 推送镜像,docker自动根据名字,知道往哪推送
[root@docker-200 /www.yuchaoit.cn/harbor]#docker push 10.0.0.200/my_harbor01/nginx:1.17.9
The push refers to repository [10.0.0.200/my_harbor01/nginx]
351816b95c49: Pushed
0e07021aa61a: Pushed
b60e5c3bcef2: Pushed
1.17.9: digest: sha256:30d9dde0c4cb5ab4989a92bc2c235b995dfa88ff86c09232f309b6ad27f1c7cd size: 948
[root@docker-200 /www.yuchaoit.cn/harbor]#

检查harbor镜像

下载harbor镜像

其他机器即可使用该镜像地址,获取私有镜像仓库内容

docker pull 10.0.0.200/my_harbor01/nginx:1.17.9

停止harbor

[root@docker-200 /www.yuchaoit.cn/harbor]#docker-compose stop
Stopping nginx ... done
Stopping harbor-jobservice ... done
Stopping harbor-core ... done
Stopping redis ... done
Stopping registryctl ... done
Stopping harbor-portal ... done
Stopping registry ... done
Stopping harbor-db ... done
Stopping harbor-log ... done
[root@docker-200 /www.yuchaoit.cn/harbor]#

还有一个docker registry私有仓库

纯API形式的私有仓库,不做讲解了,比较简单

1.获取registry镜像,加上参数,确保每次重启
docker run -d \
--name chaoge_registry \
--restart=always \
-p 5000:5000 \
-v /opt/data/registry:/var/lib/registry \
registry

还有一个docker hub

可以自行注册账号,玩一玩公开仓库。

企业级私有仓库Harbor的更多相关文章

  1. Kubernetes-5:搭建企业级私有仓库Harbor

    搭建企业级私有仓库Harbor 安装需求 python版本 >= 2.7 Docker引擎版本 >= 1.10 docker-compose版本 >= 1.6.0 安装环境 一.Py ...

  2. Docker:企业级私有仓库harbor[十六]

    一.安装配置 1.下载安装包 链接:https://pan.baidu.com/s/1Z9I7zYXSt-8ve3lFT2YCeg 提取码:iuqj 2.安装docker和docker-compose ...

  3. 企业级镜像仓库harbor搭建

    企业级镜像仓库harbor搭建 一.    Harbor概述 VMware公司最近开源了企业级Registry项目Harbor,其的目标是帮助用户迅速搭建一个企业级的Docker registry 服 ...

  4. Docker: 企业级镜像仓库Harbor的使用

    上一节,演示了Harbor的安装部署 这次我们来讲解 Harbor的使用. 我们需要了解到: 1. 如何推镜像到镜像仓库 2. 如何从镜像仓库拉取镜像 3. 如何运行从私有仓库拉取的镜像 # 查看 h ...

  5. 菜鸟系列docker——搭建私有仓库harbor(6)

    docker 搭建私有仓库harbor 1. 准备条件 安装docker sudo yum update sudo yum install -y yum-utils device-mapper-per ...

  6. Kubernets二进制安装(5)之私有仓库harbor搭建

    在IP地址为192.168.80.50,机器名为mfyxw50上搭建私有仓库harbor harbor下载地址: harbor下载连接地址:https://github.com/goharbor/ha ...

  7. 企业级镜像仓库 harbor

    企业级镜像仓库 harbor 前言 a. 本文主要为 Docker的视频教程 笔记. b. 环境为 CentOS 7.0 云服务器 c. 上一篇:跨 Docker 宿主机网络 overlay 类型 h ...

  8. docker进阶-搭建私有企业级镜像仓库Harbor

    为什么要搭建私有镜像仓库   对于一个刚刚接触Docker的人来说,官方的Docker hub是用于管理公共镜像.既然官方提供了镜像仓库我们为什么还要去自己搭建私有仓库呢?虽然也可以托管私有镜像.我们 ...

  9. 企业级Docker私有仓库Harbor

    一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docke ...

  10. 企业级镜像仓库Harbor

    介绍: Habor是由VMWare公司开源的容器镜像仓库.事实上,Habor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面, ...

随机推荐

  1. dotnet 使用 TaskTupleAwaiter 同时等待多个任务简化代码写法

    在某些业务逻辑下,需要同时等待多个任务执行完成,才能继续往下执行后续逻辑.等待任务执行的逻辑,大部分情况下需要使用到 Task.WhenAll 方法,代码行数不少.另外,在需要获取多个异步任务的返回值 ...

  2. dotnet 在 WPF 里显示数学 π 的颜色

    有逗比小伙伴问我,数学的 π 视觉效果是啥.于是我就来写一个逗比的应用将 π 的颜色在 WPF 应用画出来.原理就是读取 π 的小数点后的数值,然后使用逗比算法转换为 RGB 颜色像素,接着将这些像素 ...

  3. vue+element设置选择日期最大范围(普通版)

    效果是只能跟当天时间有关(30天),下一篇将来的任意时段,比较符合实际 <!DOCTYPE html> <html> <head> <meta charset ...

  4. RK 平台安装 ubuntu 系统

    一.简介 之前有介绍到 ARM 平台移植 ubuntu 的操作流程,在 RK 系列的平台同样适用,所以这里就不介绍怎么一步步的去对 ubuntu 进行移植,而是怎么将移植的过程编写成脚本,这样便可以在 ...

  5. 如何在Docker容器中使用systemctl启动服务

    解决方案:使用--privileged参数初始化容器 docker run -d -p 80:80 -it --privileged centos:centos8 /usr/sbin/init doc ...

  6. mod操作符效率高吗?

    编程语言中mod取余操作符%的效率不是很高,比如M = N % 10,它花费得时间本机测试是1ms,而如果使用M = N - N / 10 * 10,则只需要0.1ms. 所以平时变成得时候,可以尽量 ...

  7. leaflet实现地图遮罩

    实现地图遮罩效果(主要显示目标区域内部,外部用暗色填充): 地图遮罩实现思路:外部建一个很大的矩形区域和内部行政区边界线组成一个镂空的polygon,然后给这个polyon一个透明度为0.4的黑色即可 ...

  8. 5GC 系统架构

    目录 文章目录 目录 前文列表 4G/5G 核心网对比 4G/5G 核心网融合架构 5GC 架构 AMF 功能 SMF 功能 NSSF 功能 UPF 功能 AF.PCF & NEF 功能 BS ...

  9. AIRIOT物联网低代码平台如何配置db-driver驱动?

    设备接入能力包括接入驱动类型及接入数据量,性能方面需要考量数据采集的稳定性和驱动的丰富性等多个因素.用户在选择物联网平台时,往往存在一些误区,比如很关注平台支持的驱动数量,越多越好.市场上确有支持上千 ...

  10. 京东二面:Sychronized的锁升级过程是怎样的

    引言 Java作为主流的面向对象编程语言,提供了丰富的并发工具来帮助开发者解决多线程环境下的数据一致性问题.其中,内置的关键字"Synchronized"扮演了至关重要的角色,它能 ...