Docker----harbor服务
目录
一、harbor简介
二、harbor服务部署
1、上传文件至opt目录下
2、解压到安装目录
3、配置harbor的参数文件
4、执行运行脚本
5、查看
三、验证
1、下载一个小点的镜像,方便实验
2、通过命令行登录Harbor
3、给需要上传的镜像打tag标记
4、上传至harbor仓库
本篇实验基于docker-compose篇之后,否则无法完成
一、harbor简介
Harbor 是由 VMware 开源的一款云原生制品仓库,Harbor 的核心功能是存储和管理 Artifact。Harbor 允许用户用命令行工具对容器镜像及其他 Artifact 进行推送和拉取,并提供了图形管理界面帮助用户查看和管理这些 Artifact。(registry 为其核心组件)
Harbor 比 registry相比好处是: harbor支持多种功能、图形化界面管理、多用户权限、角色管理机制、安全机制。registry为纯字符界面形式。
环境需求:服务端主机需要安装 Python、Docker和Docker Compose。(web环境支持的是PY语言,故需要安装 Python)
二、harbor服务部署
1、上传文件至opt目录下
[root@zwb_docker opt]# rz -E
rz waiting to receive.
harbor-offline-installer-v1.2.2.tgz rh
2、解压到安装目录
[root@zwb_docker opt]# tar zxvf harbor-offline-installer-v1.2.2.tgz -C /usr/local/
3、配置harbor的参数文件
[root@zwb_docker harbor]# pwd ## 当前位置
/usr/local/harbor
[root@zwb_docker harbor]# vim harbor.cfg
4、执行运行脚本
[root@zwb_docker harbor]# sh install.sh
[root@zwb_docker harbor]# sh install.sh [Step 0]: checking installation environment ...Note: docker version: 20.10.18Note: docker-compose version: 1.14.0[Step 1]: loading Harbor images ...
dd60b611baaa: Loading layer 133.2MB/133.2MB
abf0579c40fd: Loading layer 1.536kB/1.536kB
ea1fc7bed9c5: Loading layer 22.48MB/22.48MB
1d6671367c69: Loading layer 7.168kB/7.168kB
b322bb3e4765: Loading layer 5.339MB/5.339MB
0cf512d418ac: Loading layer 9.728kB/9.728kB
4a7cdc0b1a2b: Loading layer 2.56kB/2.56kB
ef1130526636: Loading layer 22.48MB/22.48MB
Loaded image: vmware/harbor-ui:v1.2.2
4a050fccec52: Loading layer 12.16MB/12.16MB
d918d73369ec: Loading layer 17.3MB/17.3MB
22898836924e: Loading layer 15.87kB/15.87kB
Loaded image: vmware/notary-photon:server-0.5.0
76c156eab077: Loading layer 134MB/134MB
1eae6563289a: Loading layer 16.42MB/16.42MB
Loaded image: vmware/nginx-photon:1.11.13
2e814f7ef645: Loading layer 2.048kB/2.048kB
bc5742b580db: Loading layer 2.048kB/2.048kB
5413bcdb81b0: Loading layer 2.56kB/2.56kB
c4e2be066795: Loading layer 3.584kB/3.584kB
a4ea62be60b0: Loading layer 22.8MB/22.8MB
800a351ae5da: Loading layer 22.8MB/22.8MB
Loaded image: vmware/registry:2.6.2-photon
Loaded image: photon:1.0
a39bd6a7f897: Loading layer 10.95MB/10.95MB
6f79b8337a1f: Loading layer 17.3MB/17.3MB
74bbd0e81dd0: Loading layer 15.87kB/15.87kB
Loaded image: vmware/notary-photon:signer-0.5.0
2202528221a2: Loading layer 7.07MB/7.07MB
4fe250d3c912: Loading layer 7.07MB/7.07MB
Loaded image: vmware/harbor-adminserver:v1.2.2
9463fb852970: Loading layer 75.37MB/75.37MB
d2c9a2a395d9: Loading layer 3.584kB/3.584kB
b08aea2a8a82: Loading layer 3.072kB/3.072kB
103e65a1013b: Loading layer 3.072kB/3.072kB
Loaded image: vmware/harbor-log:v1.2.2
5d6cbe0dbcf9: Loading layer 129.2MB/129.2MB
435f2dfbd884: Loading layer 344.6kB/344.6kB
814d7b59f0cc: Loading layer 4.657MB/4.657MB
aae399245bd0: Loading layer 1.536kB/1.536kB
21e2ae955f72: Loading layer 33.84MB/33.84MB
a2d0f7b84059: Loading layer 25.09kB/25.09kB
819fa6af55b8: Loading layer 3.584kB/3.584kB
78914c99a468: Loading layer 167.7MB/167.7MB
36e79c658afb: Loading layer 6.144kB/6.144kB
f73503aca003: Loading layer 9.216kB/9.216kB
a21b39f6da59: Loading layer 1.536kB/1.536kB
ef81eb7c77b3: Loading layer 8.704kB/8.704kB
08d0cfe60b0d: Loading layer 4.608kB/4.608kB
0864dda8f611: Loading layer 4.608kB/4.608kB
Loaded image: vmware/harbor-db:v1.2.2
29d1f4ae97dd: Loading layer 18.31MB/18.31MB
7caf936e1402: Loading layer 18.31MB/18.31MB
Loaded image: vmware/harbor-jobservice:v1.2.2
78dbfa5b7cbc: Loading layer 130.9MB/130.9MB
5f70bf18a086: Loading layer 1.024kB/1.024kB
8deec01122be: Loading layer 344.6kB/344.6kB
574ab36807f2: Loading layer 1.536kB/1.536kB
d8f2cde2eef8: Loading layer 20.48kB/20.48kB
eaa3924b054e: Loading layer 5.12kB/5.12kB
8aa2c772121c: Loading layer 184.3MB/184.3MB
c3014bbccb0b: Loading layer 8.704kB/8.704kB
978a35efaa8c: Loading layer 4.608kB/4.608kB
c2385ae7d6e5: Loading layer 16.6MB/16.6MB
Loaded image: vmware/harbor-notary-db:mariadb-10.1.10
c192a34d4ff4: Loading layer 155.2MB/155.2MB
d012a9276a83: Loading layer 10.75MB/10.75MB
b8befd881cb5: Loading layer 10.75MB/10.75MB
Loaded image: vmware/clair:v2.0.1-photon
bbda1562018e: Loading layer 101.6MB/101.6MB
1171ab08cc04: Loading layer 6.656kB/6.656kB
6df81d3a0683: Loading layer 6.656kB/6.656kB
Loaded image: vmware/postgresql:9.6.4-photon[Step 2]: preparing environment ...
Clearing the configuration file: ./common/config/adminserver/env
Clearing the configuration file: ./common/config/ui/env
Clearing the configuration file: ./common/config/ui/app.conf
Clearing the configuration file: ./common/config/ui/private_key.pem
Clearing the configuration file: ./common/config/db/env
Clearing the configuration file: ./common/config/jobservice/env
Clearing the configuration file: ./common/config/jobservice/app.conf
Clearing the configuration file: ./common/config/registry/config.yml
Clearing the configuration file: ./common/config/registry/root.crt
Clearing the configuration file: ./common/config/nginx/nginx.conf
loaded secret from file: /data/secretkey
Generated configuration file: ./common/config/nginx/nginx.conf
Generated configuration file: ./common/config/adminserver/env
Generated configuration file: ./common/config/ui/env
Generated configuration file: ./common/config/registry/config.yml
Generated configuration file: ./common/config/db/env
Generated configuration file: ./common/config/jobservice/env
Generated configuration file: ./common/config/jobservice/app.conf
Generated configuration file: ./common/config/ui/app.conf
Generated certificate, key file: ./common/config/ui/private_key.pem, cert file: ./common/config/registry/root.crt
The configuration files are ready, please use docker-compose to start the service.[Step 3]: checking existing instance of Harbor ...[Step 4]: starting Harbor ...
Creating harbor-log ...
Creating harbor-log ... done
Creating registry ...
Creating harbor-db ...
Creating harbor-adminserver ...
Creating registry
Creating harbor-db
Creating registry ... done
Creating harbor-ui ...
Creating harbor-ui ... done
Creating nginx ...
Creating harbor-jobservice ...
Creating harbor-jobservice
Creating nginx ... done✔ ----Harbor has been installed and started successfully.----Now you should be able to visit the admin portal at http://192.168.159.68 .
For more details, please visit https://github.com/vmware/harbor .
5、查看
[root@zwb_docker harbor]# docker-compose psName Command State Ports
---------------------------------------------------------------------------------------------------------------------------------------------------------
harbor-adminserver /harbor/harbor_adminserver Up
harbor-db docker-entrypoint.sh mysqld Up 3306/tcp
harbor-jobservice /harbor/harbor_jobservice Up
harbor-log /bin/sh -c crond && rm -f ... Up 127.0.0.1:1514->514/tcp
harbor-ui /harbor/harbor_ui Up
nginx nginx -g daemon off; Up 0.0.0.0:443->443/tcp,:::443->443/tcp , 0.0.0.0:4443->4443/tcp,:::4443->44 43/tcp, 0.0.0.0:80->80/tcp,:::80->80/tcp
registry /entrypoint.sh serve /etc/ ... Up 5000/tcp
浏览器访问
之前在docker的daemom.json文件中配置了配置了Harbor的地址,进行删除
[root@zwb_docker docker]# systemctl daemon-reload ## 重新加载守护进程
[root@zwb_docker docker]# systemctl restart docker.service ## 重启服务
在docker.server文件中进行设置:让docker启动时便可指向harbor仓库
重启服务:
[root@zwb_docker docker]# cd /usr/local/harbor/
[root@zwb_docker harbor]# docker-compose up -d[root@zwb_docker harbor]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
44d333a47740 vmware/harbor-jobservice:v1.2.2 "/harbor/harbor_jobs…" 4 hours ago Up About a minute harbor-jobservice
20f31cd89ebd vmware/nginx-photon:1.11.13 "nginx -g 'daemon of…" 4 hours ago Up 27 seconds 0.0.0.0:80->80/tcp, :::80->80/tc443/tcp, :::443->443/tcp, 0.0.0.0:4443->4443/tcp, :::4443->4443/tcp nginx
f5fd0a1aea60 vmware/harbor-ui:v1.2.2 "/harbor/harbor_ui" 4 hours ago Up About a minute harbor-ui
28358bcc064c vmware/harbor-adminserver:v1.2.2 "/harbor/harbor_admi…" 4 hours ago Up About a minute harbor-adminserver
863b61ac76c6 vmware/harbor-db:v1.2.2 "docker-entrypoint.s…" 4 hours ago Up About a minute 3306/tcp harbor-db
2de21a6db7a1 vmware/registry:2.6.2-photon "/entrypoint.sh serv…" 4 hours ago Up About a minute 5000/tcp registry
26010cca51d2 vmware/harbor-log:v1.2.2 "/bin/sh -c 'crond &…" 4 hours ago Up 49 minutes 127.0.0.1:1514->514/tcp harbor-log
三、验证
1、下载一个小点的镜像,方便实验
[root@zwb_docker harbor]# docker pull cirros
[root@zwb_docker harbor]# docker pull cirros
Using default tag: latest
latest: Pulling from library/cirros
d0b405be7a32: Pull complete
bd054094a037: Pull complete
c6a00de1ec8a: Pull complete
Digest: sha256:1e695eb2772a2b511ccab70091962d1efb9501fdca804eb1d52d21c0933e7f47
Status: Downloaded newer image for cirros:latest
docker.io/library/cirros:latest
2、通过命令行登录Harbor
[root@zwb_docker harbor]# docker login -u admin -p Harbor12345 http://127.0.0.1
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
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-storeLogin Succeeded ### 登录成功
3、给需要上传的镜像打tag标记
## 打tag
[root@zwb_docker harbor]# docker tag cirros:latest 127.0.0.1/public-libary/cirros:v2
[root@zwb_docker harbor]# docker push 127.0.0.1/public-libary/cirros:v2
4、上传至harbor仓库
[root@zwb_docker harbor]# docker push 127.0.0.1/public-libary/cirros:v2
The push refers to repository [127.0.0.1/public-libary/cirros]
984ad441ec3d: Layer already exists
f0a496d92efa: Layer already exists
e52d19c3bee2: Layer already exists
v2: digest: sha256:483f15ac97d03dc3d4dcf79cf71ded2e099cf76c340f3fdd0b3670a40a198a22 size: 943
## 查看仓库上传成功
删除本地镜像,从仓库下载
[root@zwb_docker harbor]# docker rmi 127.0.0.1/public-libary/cirros:v2
Untagged: 127.0.0.1/public-libary/cirros:v2
Untagged: 127.0.0.1/public-libary/cirros@sha256:483f15ac97d03dc3d4dcf79cf71ded2e099cf76c340f3fdd0b3670a40a198a22
从仓库下载
[root@zwb_docker harbor]# docker pull 192.168.159.68/public-libary/cirros:v2
v2: Pulling from public-libary/cirros
Digest: sha256:483f15ac97d03dc3d4dcf79cf71ded2e099cf76c340f3fdd0b3670a40a198a22
Status: Downloaded newer image for 192.168.159.68/public-libary/cirros:v2
192.168.159.68/public-libary/cirros:v2
[root@zwb_docker harbor]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
dockercompose_nginx latest b7d47c45767d 6 hours ago 205MB
<none> <none> a3e7e0eecf4f 6 hours ago 308MB
centos 7 eeb6ee3f44bd 13 months ago 204MB
192.168.159.68/public-libary/cirros v2 f9cae1daf5f6 19 months ago 12.6MB
cirros latest f9cae1daf5f6 19 months ago 12.6MB
vmware/harbor-log v1.2.2 36ef78ae27df 5 years ago 200MB
vmware/harbor-jobservice v1.2.2 e2af366cba44 5 years ago 164MB
vmware/harbor-ui v1.2.2 39efb472c253 5 years ago 178MB
vmware/harbor-adminserver v1.2.2 c75963ec543f 5 years ago 142MB
vmware/harbor-db v1.2.2 ee7b9fa37c5d 5 years ago 329MB
vmware/nginx-photon 1.11.13 6cc5c831fc7f 5 years ago 144MB
vmware/registry 2.6.2-photon 5d9100e4350e 5 years ago 173MB
vmware/postgresql 9.6.4-photon c562762cbd12 5 years ago 225MB
vmware/clair v2.0.1-photon f04966b4af6c 5 years ago 297MB
vmware/harbor-notary-db mariadb-10.1.10 64ed814665c6 5 years ago 324MB
vmware/notary-photon signer-0.5.0 b1eda7d10640 5 years ago 156MB
vmware/notary-photon server-0.5.0 6e2646682e3c 5 years ago 157MB
photon 1.0 e6e4e4a2ba1b 6 years ago 128MB
下载完成。如果仓库中没有,会自动到公共仓库下载
Docker----harbor服务相关推荐
- 安装使用docker harbor作为私有docker服务器的操作步骤及遇到的问题
安装使用docker harbor作为私有docker服务器的操作步骤及遇到的问题 一.ubuntu18.04安装docker harbor步骤及遇到的问题 二.关于docker commit及doc ...
- 微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建
微服架构基础设施环境平台搭建 -(二)Docker私有仓库Harbor服务搭建 通过采用微服相关架构构建一套以Kubernetes+Docker为自动化运维基础平台,以微服务为服务中心,在此基础之上构 ...
- Docker Harbor——拥有独特UI界面的私有仓库
文章目录 简介 Harbor架构即组件介绍 Harbor配置文件以及相关参数 搭建Harbor私有仓库 1.搭建环境 2.下载Harbor安装程序 3.配置Harbor参数文件 4.启动Harbor ...
- Docker Harbor概述及构建
目录 一.Docker Harbor概述 1.1 Harbor的优势 1.2 Harbor的核心组件 1.2.1 Proxy 1.2.2 Registry 1.2.3 Core services 1. ...
- Docker harbor私有仓库部署与管理
Docker harbor私有仓库部署与管理. 前言 一.什么是Harbor 二.Harbor的特性 三.Harbor的构成 四.Harbor部署 4.1 环境准备 4.2 部署Docker Comp ...
- Docker Harbor
目录 一.Docker Harbor概述 1.Harbor的优势 2.Harbor知识点 3.Docker私有仓库架构 二.Harbor构建Docker私有仓库 1.环境配置 2.案例需求 3.部署d ...
- Docker -- Harbor介绍
Harbor Docker Harbor 部署私有仓库.它以 Registry 为基础,提供了对用户友好的管理界面,可以帮助我们快速搭建一个企业级的 Docker Registry 服务.Harbor ...
- 肝2022世界杯,怒写企业级镜像私仓Docker+Harbor实践
2022-12-09 揭幕2022卡塔尔世界杯4强角逐的第一天,越来越精彩了 同时记录程序猿的成长~ 1.背景 由于期望搭建一个企业级CICD的环境,开始尝试常规的gitlab+jenkins+k8s ...
- Spring Boot+Docker微服务分布式服务架构设计和部署案例
2019独角兽企业重金招聘Python工程师标准>>> j360-microservice spring-boot+docker微服务设计之j360-microservice:(欢迎 ...
- SpringCloud与Docker微服务架构实战pdf
下载地址:网盘下载 作为一部帮助大家实现微服务架构落地的作品,<Spring Cloud与Docker微服务架构实战>覆盖了微服务理论.微服务开发框架(Spring Cloud)以及运行平 ...
最新文章
- 7系列GTX中的疑惑
- 牛腩发布没有Internet 信息服务(IIS)管理器解决办法
- 通过完整示例来理解如何使用 epoll
- 我用 PyTorch 复现了 LeNet-5 神经网络(CIFAR10 数据集篇)!
- 二维数组最大关联子数组
- 37. 重定向 21
- 基于YOLOv5的车辆识别系统
- 华为eSight网络监控平台安装
- 拉格朗日法建立动力学方程
- java 遍历json串_Java遍历Json数据
- beetl模板使用场景_Beetl使用指南
- EBS之JTF_Grid 开发总结
- Wireshark 提示和技巧 | TCP Reassembly
- 使用JavaScript生成二维码和识别二维码
- 回归分析——简单线性回归实例讲解(SPSS)
- UniApp开发社交社区
- 【kali-漏洞利用】(3.3)Metasploit后渗透(下):后渗透模块使用
- ORACLE使用dbv工具检验数据文件是否有坏块
- 观古之四大名著《水浒传》有感
- RT-ThreadXSTM32F407智能车培训报名啦!
热门文章
- 遗传算法 python 简书_遗传算法(Genetic Algorithm ,GA)学习笔记
- python机器学习基础教程-学习笔记(一)
- 亚马逊、Lazada、shopee、wish、ebay、速卖通、阿里国际站、mercari、newegg测评(补单)如何有效降低成本提高效率搭建稳定的养号环境
- 非主流Linux窗口管理器集锦
- 用python开发一个背单词软件-Python Demo: PySimpleGUI 背单词工具
- 关于Python中turtle库中简单函数的解释
- c语言编程代码对齐快捷键,三、Windows键盘快捷键—键盘代码转换
- Java代码设计模式讲解二十三种设计模式
- Introducing PMDK into PostgreSQL
- 2022年电工高级等级证(三级)判断题专练及答案