Docker镜像管理之Harbor
github: https://github.com/goharbor/harbor
官网:https://goharbor.io/docs/2.5.0/
[安装]
1. 查看是否达到安装条件

2.根据实际情况选择 在线版本和离线版本
Online installer: The online installer downloads the Harbor images from Docker hub. For this reason, the installer is very small in size.
Offline installer: Use the offline installer if the host to which are deploying Harbor does not have a connection to the Internet. The offline installer contains pre-built images, so it is larger than the online installer.
我这里使用的在线版本进行安装:
3.下载并安装
wget https://github.com/goharbor/harbor/releases/download/v2.5.0/harbor-online-installer-v2.5.0.tgz tar -zxvf harbor-online-installer-v2.5.0.tgz
修改配置文件:
mv harbor.yml.tmpl harbor.yml vim harbor.yml
如果配置的域名或使用指定的端口的话, 需要修改 hostname:
如果80端口有占用的话, 需要修改参数: port
如果没有使用https的话, 需要将参数进行注释: https 部分
extenal_url: 可以与hostname 保持一致
注意点: 可以修改这里的admin登录的密码 harbor_admin_password
安装:
./install.sh
打开web界面 进行登录

1)创建项目(共有,私有)

2)用户管理 > 创建用户

3)将用户绑定到指定的仓库下

使用:
1) 登录
docker login -u xxx -p xxx xx.xxx.com 例如:
[root@localhost src]# docker login 192.168.139.132
Username: caixin
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@localhost src]#
2)镜像推送
先进行打tag [root@localhost src]# docker tag nginx:1.18.0 192.168.139.132/library/nginx:1.18.0
[root@localhost src]# docker tag mysql:5.7.32 192.168.139.132/library/mysql:5.7.32
[root@localhost src]# docker tag php:5.6-fpm 192.168.139.132/library/php:5.6-fpm [root@localhost src]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
192.168.139.132/library/nginx 1.18.0 c2c45d506085 12 months ago 133MB
nginx 1.18.0 c2c45d506085 12 months ago 133MB
192.168.139.132/library/mysql 5.7.32 cc8775c0fe94 15 months ago 449MB
mysql 5.7.32 cc8775c0fe94 15 months ago 449MB
192.168.139.132/library/php 5.6-fpm 3458979c7744 3 years ago 344MB
php 5.6-fpm 3458979c7744 3 years ago 344MB
goharbor/chartmuseum-photon v0.7.1-v1.7.0 666d74cc236a 3 years ago 111MB
goharbor/harbor-migrator v1.7.0 482699d98927 3 years ago 799MB
goharbor/redis-photon v1.7.0 8adff755797f 3 years ago 96.1MB
goharbor/clair-photon v2.0.7-v1.7.0 7e72f6ba05bd 3 years ago 165MB
goharbor/notary-server-photon v0.6.1-v1.7.0 b4a22960dfce 3 years ago 102MB
goharbor/notary-signer-photon v0.6.1-v1.7.0 bb0db7ebd1de 3 years ago 99.6MB
goharbor/harbor-registryctl v1.7.0 1906a8b84fa5 3 years ago 101MB
goharbor/registry-photon v2.6.2-v1.7.0 677f21b09362 3 years ago 86.4MB
goharbor/nginx-photon v1.7.0 6ed96fc73f83 3 years ago 35.5MB
goharbor/harbor-log v1.7.0 722fa4a77846 3 years ago 81MB
goharbor/harbor-jobservice v1.7.0 effd390c0cd4 3 years ago 83.8MB
goharbor/harbor-core v1.7.0 2ebd58ce5638 3 years ago 95.2MB
goharbor/harbor-portal v1.7.0 72a291f86bab 3 years ago 40.2MB
goharbor/harbor-adminserver v1.7.0 9f850341a571 3 years ago 72MB
goharbor/harbor-db v1.7.0 45d94fe5fee5 3 years ago 133MB
docker/compose 1.18.0 8a01ec091f90 4 years ago 19.2MB
[root@localhost src]#
3)推送
[root@localhost src]# docker push 192.168.139.132/library/nginx:1.18.0
[root@localhost src]# docker push 192.168.139.132/library/mysql:5.7.32
The push refers to repository [192.168.139.132/library/mysql]
df1ee06a30c4: Pushed
902dedce4cb4: Pushed
569a2d6e5302: Pushed
8bdb6ee41f57: Pushed
98d98806c8ac: Pushed
0394a41efa73: Pushed
c484a3b6d841: Pushed
6d23902c2a54: Pushed
74c86dffd46f: Pushed
ef4a33cee7a0: Pushed
cb42413394c4: Pushed
5.7.32: digest: sha256:860f4bcc18607de9f40a7453c7dc160313ecc3a5a46be3b060569b6216d348f6 size: 2621
[root@localhost src]#
[root@localhost src]# docker push 192.168.139.132/library/php:5.6-fpm
The push refers to repository [192.168.139.132/library/php]
bf97b47da88d: Pushed
56d6009fbc8b: Pushed
b6d5993da6a4: Pushed
c9e57440aae2: Pushed
5e2afcdec12b: Pushed
6e4f2e72b0d9: Pushed
6eb3cfd4ad9e: Pushed
82bded2c3a7c: Pushed
b87a266e6a9c: Pushed
3c816b4ead84: Pushed
5.6-fpm: digest: sha256:7cfd6ccb875ff314b2c672b62aa3169fe79d54bf3422b7b0017955b3457ca1a7 size: 2410
[root@localhost src]#
就可以在harbor中查看到推送上去的镜像了
# 登录
docker login http://harbor.xxx.com
# 打标签
docker tag hello:v1 harbor.xxx.com/library/docker-hello:v1.0.0
# 推送镜像
docker push harbor.xxx.com/library/docker-hello:v1.0.0 # 推送镜像
docker pull harbor.xxx.com/library/docker-hello:v1.0.0
如果出现无法登录的错误, 需要配置仓库地址, 在配置文件中添加/etc/docker/daemon.json
{
...
"insecure-registries": ["http://harbor.xxx.com"]
}
重启生效
systemctl daemon-reload
systemctl restart docker
镜像一般较大,需要设置nginx的最大文件上限
vim /usr/local/nginx/conf/nginx.conf
http {
...
client_max_body_size 1024m;
}
Docker镜像管理之Harbor的更多相关文章
- Docker镜像管理基础篇
Docker镜像管理基础篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Docker Images Docker镜像还有启动容器所需要的文件系统及其内容,因此,其用于创建并启 ...
- Devops(四):Docker 镜像管理
参考 <Docker中上传镜像到docker hub中> <Docker 镜像管理> <通过容器提交镜像(docker commit)以及推送镜像(docker push ...
- 2、docker镜像管理
Docker镜像管理 镜像是Docker容器的基础,想运行一个Docker容器就需要有镜像.我们上面已经学会了使用search搜索镜像.那么这个镜像是怎么创建的呢? 创建镜像 镜像的创建有以下几种方法 ...
- Docker学习第一天(Docker入门&&Docker镜像管理)
简介 今天小区的超市买零食老板给我说再过几天可能就卖完了我有点诧异,老板又说厂家不生产了emmm 今天总算开始docker了! 1.Docker? 1.什么是Docker Docker 是一个开源的应 ...
- 三、docker镜像管理
一.docker镜像管理 1.1.镜像搜索-search 从docker镜像仓库模糊搜索镜像 用法: docker search 镜像关键字 [root@zutuanxue ~]# docker se ...
- DOCKER学习_016:Docker镜像仓库和HARBOR的简单安装和管理
一 镜像仓库介绍 1.1 简介 镜像仓库用于存放 Docker镜像 Docker registry提供镜像仓库服务 一个 Docker registry可以包含多个镜像仓库 仓库分为公共镜像仓库与私有 ...
- paas架构之docker——镜像管理
1. 镜像管理 1.1. 列出镜像 Sudo docker images 1.2. 查看镜像 Sudo docker images xxxx 1.3. 拉取镜像 Sudo docker pull ub ...
- Docker镜像管理
镜像是docker的三大核心概念之一.可以用来创建容器. Docker的镜像实际上由一层一层的文件系统组成,这种层级的文件系统被称为UnionFS.镜像可以基于Dockerfile构建,Dockerf ...
- 004.Docker镜像管理
一 镜像基本操作 镜像是一个包含程序运行必要依赖环境和代码的只读文件,其本质是磁盘上一系列文件的集合.它采用分层的文件系统,将每一次改变以读写层的形式增加到原来的只读文件上.镜像是容器运行的基石. 1 ...
- docker镜像管理(二)
docker镜像 docker镜像含有启动容器所需要的文件系统和内容,因此,其用于创建并启动docker容器 docker镜像采用分层构建机制,最底层为bootfs,其之为rootfs bootfs: ...
随机推荐
- [rCore学习笔记 026]第三章作业
写在前面 本随笔是非常菜的菜鸡写的.如有问题请及时提出. 可以联系:1160712160@qq.com GitHhub:https://github.com/WindDevil (目前啥也没有 编程题 ...
- ubuntu22.04安装DBeaver
要在 Ubuntu22.04 上安装 DBeaver,可以选择使用 Ubuntu 软件中心的图形界面方法或使用命令行方法通过官方 DBeaver 仓库或 Snap 包安装. 方法一:从官方仓库安装 D ...
- 从零开始搭建一个LoRaWAN基站
先说两句 SX1301/SX1302是semtech公司推出的基站端射频基带芯片,其与SX127x/SX126x的主要区别在于: 只是个基带芯片,使用时需要加射频前端(SX125x/SAW/...) ...
- 我发布了一款相亲平台《i相遇》
因缘际会之下,我踏入了相亲平台的领域.起初,是为一位客户打造专属相亲应用,过程中深入体验了众多同类平台,却遗憾地发现它们普遍掺杂着欺诈的阴影--高昂的费用.兼职托儿的身影.以及虚假的钓鱼信息,不一而足 ...
- 林史·CLOI纪事本末
CLOI正源在JD,JD在初次短期集训结束后带出了一句经典名言: 那如果是在丛林里呢 这句话在短期内在全班范围内流传甚广,因此,\(GreatJungleLord\) 也因其幽默诙谐的形象赢得了大家的 ...
- 2款.NET开源且免费的Git可视化管理工具
Git是什么? Git是一种分布式版本控制系统,它可以记录文件的修改历史和版本变化,并可以支持多人协同开发.Git最初是由Linux开发者Linus Torvalds创建的,它具有高效.灵活.稳定等优 ...
- LeetCode 332. Reconstruct Itinerary 最小欧拉路径
题意 给N个单词表示N个点,和N-1个单词对,表示可以走的路径,求字典序最小的总路径. 首先说下这么暴力DFS能过.暴力的我都不敢写= = class Solution { public: vecto ...
- SublimeText配置Markdown编辑及预览
概述 本文详细介绍了如何配置Sublime Text及相关插件,使之成为Markdown编辑器并且能够在浏览器中实现预览功能. 所需工具 Sublime Text + Package Control ...
- ASP 封装基本身份认证( HTTP Basic Authenticate)辅助类
最近修改一个古老的asp程序,需要为单独几个页面进行基本身份认证.由于IIS自带的设置基本身份认证是针对文件夹的,而这几个页面又不方便挪动位置,幸好在网上找到一个asp实现WWW-Authentica ...
- 活动预告 | 中国数据库联盟(ACDU)中国行第四站定档西安,邀您探讨数据库前沿技术
作为墨天轮社区与中国数据库联盟的品牌活动之一,[ACDU 中国行]已走过深圳.杭州.成都三大城市,在线下汇集数据库领域的行业知名人士,共同探讨数据库前沿技术及其应用,促进行业发展和创新,同时也为开发者 ...