仓库的概念也就是用于存储,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. static_cast与dynamic_cast到底是什么?

    写这个随笔说一下C++的static_cast和dynamic_cast用在子类与父类的指针转换时的一些事宜.首先,[static_cast,dynamic_cast][父类指针,子类指针],两两一组 ...

  2. 基于 PTS 压测轻松玩转问题诊断

    ​简介:性能测试 PTS(Performance Testing Service)是具备强大的分布式压测能力的 SaaS 压测平台,可模拟海量用户的真实业务场景,全方位验证业务站点的性能.容量和稳定性 ...

  3. 优秀的 RocketMQ 可视化管理工具 GUI 客户端

    优秀的 RocketMQ 可视化管理工具 GUI 客户端 官网地址:http://www.redisant.cn/rocketmq 快速查看所有 RocketMQ 集群,包括Brokers.Topic ...

  4. 9.3K+ Star!一个面向中小型企业设计的开源运维平台!

    大家好,我是Java陈序员. 我们在日常开发中,会有很多的应用环境,开发环境.测试环境.回归环境.生产环境等等. 这些环境,需要部署在一台台的服务器上,有的可能是物理机,有的可能是云服务器. 那么,这 ...

  5. ssh秘钥对免密码登陆

    准备两台linux服务器 a和b , 在a上使用ssh命令登陆b服务器 , 并且不用 输入密码 1.在a服务器上,比如是root用户 ,进去/root/.ssh目录 ,没有就创建, 就是进入家目录的. ...

  6. ansible系列(27)--ansible的include任务复用

    目录 1. include任务复用 1.1 多个项目调用相同task 1.2 Inlcude结合tags应用 1. include任务复用 有时,我们发现大量的 Playbook 内容需要重复编写,各 ...

  7. C语言简答题

    C语言的历史: c语言是在20世纪70年代初美国贝尔实验室开发的一种高级编程语言,由B语言发展来,最初是为了Unix操作系统开发的.在80年代中期,由ISO和ANSI C对它进行了一系列的标准化, 9 ...

  8. $KMP$学习记

    <不浪漫罪名>--王杰 没有花 这刹那被破坏吗 无野火都会温暖吗 无烟花一起庆祝好吗 若爱恋 仿似戏剧那样假 如布景一切都美化 连相拥都参照主角吗 你说我未能定时 令你每天欢笑一次 我没说 ...

  9. UE4 InstancedStaticMesh使用

    在绘制大批量近似模型时,Unity有GPU Instancing(https://www.cnblogs.com/hont/p/7143626.html),而UE中有 HISM和ISM(Instanc ...

  10. 密码学—DES加密的IP置换Python程序

    文章目录 IP初始置换与逆置换 编程想法 转二进制过程中的提取一些数据 64为一组 IP置换 IP逆置换 DES发明人 美国IBM公司W. Tuchman 和 C. Meyer1971-1972年研制 ...