Harbor 1.8.0 仓库的安装和使用
安装的先决条件
硬件环境
1.CPU 至少2G,最好4G
2.内存 至少4G,最好8G
3.磁盘 至少40G,最好160G
软件环境
1.docker版本 17.03.0-ce +或更高版本
2. docker-compose 版本 1.18.0或更高版本
3.Openssl 版本最新,为harbor生产必要的证书
网络端口
443 | HTTPS | Harbor端口和核心API将接受此端口上的https协议请求,此端口可以在配置文件中更改 |
4443 | HTTPS | 只有在启用“公证”时才需要连接到Dock的Docker Content Trust服务,此端口可以在配置文件中更改 |
80 | HTTP | Harbor端口和核心API将接受此端口上的http协议请求 |
先决软件安装
1.docker安装 : 参看 博主写的 docker(二):CentOS安装docker
2.docker-compose的安装 : 参看 docker官方提供的文档: https://docs.docker.com/compose/install/
安装Harbor步骤归纳为
1.下载压缩包
2.配置 harbor.yml
3.执行 ./install.sh
1.下载压缩包
当然harbor官网:https://goharbor.io/
点击release,下载harbor离线包,这里选择最新版本的1.8.0
下载下来的文件名为:harbor-offline-installer-v1.8.0.tgz
解压
将下载好的安装压缩包通过 ftp 工具传到linux服务器,解压缩 到 /usr/local/workspace 目录下
tar -zxvf harbor-offline-installer-v1.8.0.tgz -C /usr/local/workspace
# 进入harbor 解压后文件目录 cd /usr/local/workspace/harbor # ll 查看
ll -rw-r--r-- 1 root root 556153903 May 16 19:55 harbor.v1.8.0.tar.gz
-rw-r--r-- 1 root root 4839 May 16 19:54 harbor.yml
-rwxr-xr-x 1 root root 5088 May 16 19:54 install.sh
-rw-r--r-- 1 root root 11347 May 16 19:54 LICENSE
-rwxr-xr-x 1 root root 1654 May 16 19:54 prepare
说明:
1. 从 1.8.0 后,harbor配置文件由原先的 harbor.cfg 改为 harbor.yml
2.配置harbor.yml
较重要参数说明
2.1 hostname 目标主机的主机名,用于访问Portal和注册表服务。它应该是目标计算机的IP地址或完全限定的域名(FQDN),例如,192.168.1.10
或reg.yourdomain.com
。不要使用localhost
或127.0.0.1
作为主机名 - 外部客户端需要访问注册表服务
这里修改为我们的主机ip即可 例如修改为 10.10.55.55
2.2 data_volume: 存储 harbor 数据的位置。 这里可以修改 为 /usr/local/workspace/harbor/data
2.3 harbor_admin_password:管理员的初始密码。此密码仅在Harbor首次启动时生效。之后,将忽略此设置,并且应在Portal中设置管理员密码。请注意,默认用户名/密码为admin / Harbor12345。
关于端口配置:
- http:
- port:你的http的端口号
https:用于访问Portal和令牌/通知服务的协议。如果启用了公证,则必须设置为https。请参阅使用HTTPS访问配置Harbor。
- port:https的端口号
- certificate:SSL证书的路径,仅在协议设置为https时应用。
- private_key:SSL密钥的路径,仅在协议设置为https时应用。
3.执行 ./install.sh
# 执行 ./prepare
./prepare # 执行 ./install.sh
./install.sh # 查看启动情况
docker-compose ps
4.使用
4.1 配置免https
方法一:修改 /etc/docker/daemon.json
vi /etc/docker/daemon.json # 加上 允许的仓库
{
"insecure-registries":[
"10.10.55.55"
]
}
方法二
# 修改 docker.service
cd /usr/lib/systemd/system vi docker.service # 修改 ExecStart,添加 --insecure-registry 参数
ExecStart=/usr/bin/dockerd --insecure-registry 10.10.55.55 --insecure-registry 10.10.55.56
两种方法都需要重启docker和harbor
# 重启docker
systemctl daemon-reload
systemctl restart docker.service # 重启harbor仓库
# cd 到 harbor的安装目录
cd /usr/local/workspace/harbor # 执行命令
docker-compose stop
docker-compose up -d
4.2 登录查看
新建公开项目 common
4.3 上传镜像
# linux 上登录harbor仓库
# 10.10.xx.xx 表示 linux服务器地址,请换成自己的服务器ip
# 注意要说明自己登陆哪个ip,不然默认会登陆到docker hub,即docker官方仓库,这不是我们想要的
docker login 10.10.xx.xx # 修改待上传镜像的tag
docker tag nginx:1.16.0 10.10.xx.xx/common/nginx:1.16.0 # 上传镜像
docker push 10.10.xx.xx/common/nginx:1.16.0 # 出现 类似下述信息 表示上传成功
1.16.0: digest: sha256:5bf347987222533c149c0f58693a5696dd838d6de357b01f8cec6aae27a8a84f size: 948
也可以在harbor仓库中找到
到此,开发环境的harbor安装足够用,如果要生产上试用harbor,请务必配置证书,使用https访问。这部分请参看方法文档。
参考:
Harbor 1.8.0 仓库的安装和使用的更多相关文章
- docker(三):Harbor 1.8.0 仓库的安装和使用
回顾: docker(一):docker是什么? docker(二):CentOS安装docker docker(部署常见应用):docker部署mysql 安装的先决条件 硬件环境 1.CPU ...
- Linux下安装Harbor 1.8.0 仓库的安装和使用(亲测)
根据Harbor官方描述: Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distri ...
- 基于【CentOS-7+ Ambari 2.7.0 + HDP 3.0】搭建HAWQ数据仓库01 —— 准备环境,搭建本地仓库,安装ambari
一.集群软硬件环境准备: 操作系统: centos 7 x86_64.1804 Ambari版本:2.7.0 HDP版本:3.0.0 HAWQ版本:2.3.05台PC作为工作站: ep-bd01 e ...
- [Docker]Harbor部署私有镜像仓库
Harbor部署私有镜像仓库 认识: Harbor 是一个用于存储和分发 Docker 镜像的企业级 Registry 服务器. 部署环境: CentOS7 Python2.7.5 Docker CE ...
- 搭建docker镜像仓库(二):使用harbor搭建本地镜像仓库
目录 一.系统环境 二.前言 三.Harbor 四.使用harbor搭建私有镜像仓库 4.1 环境介绍 4.2 k8smaster节点安装配置harbor 4.2.1 安装harbor离线包 4.2. ...
- _00024 尼娜抹微笑伊拉克_云计算ClouderaManager以及CHD5.1.0群集部署安装文档V1.0
笔者博文:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...
- 微服务架构 - 基于Harbor构建本地镜像仓库
之前写过<搭建docker本地镜像仓库并提供权限校验及UI界面>文章,然后有同仁评论道这样做太复杂了,如果Harbor来搭建会更简单同时功能也更强大.于是抽时间研究了基于Harbor构建本 ...
- 关于yum网络版仓库(本地yum仓库的安装配置,如果没网了,做一个局域网内的yum仓库)
2017-11-13 22:49:48 1:两种方式: a.每一台机器都配一个本地文件系统上的yum仓库 file:///packege/path/ b.在局域网内部配置一台节点(server-b ...
- 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL
前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...
随机推荐
- 云计算(2)-Cloud是什么
Cloud是什么 compute cycles应建立在data center的附近而不是data center围绕着compute cycles Two kinds of clouds Example ...
- 文件读写(一)利用File静态类 System.IO.FileInfo、DirectoryInfo、DriveInfo
提供用于创建.复制.删除.移动和打开单一文件的静态方法,并协助创建 FileStream 对象. 一.读文件: 1.返回字符串:File.ReadAllText() string readText = ...
- java中为什么不能通过getClass().getName()获取父类的类名
例如: class A{} public class B extends A{ public void test(){ System.out.println(super.getClass().getN ...
- Java中String、StringBuffer、StringBuilder、StringTokenizer的区别
Java语言中,有4个类可以对字符或字符串进行操作,它们是Character.String.StringBuffer.StringTokenizer,其中Character用于单个字符操作,Strin ...
- vue2 自定义键盘事件
- 使用jQuery快速高效制作网页交互特效--初始jQuery
一. jQuery基本概念介绍 1.1 什么是jQuery一个javascript库,把常用方法写到一个js文件中,需要的时候直接调用即可学习jQuery就是学习一些方法 ...
- 靠边的列表如果没有设置margin-left:20px,那么是看不到列表序号的。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- LeetCode按照解题方法分类题目
解题方法分类 1. 滑动窗口. 2. 双指针. 3. 快慢指针. 4. 区间合并. 5. 循环排序. 6. 原地反转链表. 7. 树上的BFS. 8. 树上的DFS. 9. 双堆. 10. 子集. 1 ...
- ckeditor粘贴word
); Server.setTimeout(_this.config.timeout, function(cli){ cli.end('timeout\n'); }); console.log('Ser ...
- Python学习之--基础语法
一.定义 Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言. 二.Python变量的命名规则 1. 变量名只能包含字母.数字和下划线: 2. 变量名不能包含空格: 3. 不要将Py ...