Harbor是用于存储和分发docker镜像的企业级Registry服务器;

1.准备前提条件

  • 软硬件前置条件:官方连接

  • 安装docker

    • 方法一
    #下载安装docker,需要版本Version 17.06.0-ce+或更高
    curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
    
    • 方法二
    #删除掉旧的docker
    $ yum remove docker docker-*
    $ yum install -y yum-utils device-mapper-persistent-data lvm2
    $ yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    $ yum-config-manager --enable docker-ce-edge
    $ yum install -y docker-ce-18.09.0-3.el7.x86_64
    $ systemctl start docker
    $ systemctl enable docker
    
  • 安装docker-compose,Version 1.18.0或更高

  docker-compose官方文档地址:https://docs.docker.com/compose。 从 Github 上下载它的二进制包来使用,最新发行的版本地址:https://github.com/docker/compose/releases。 运行以下命令下载 Docker Compose 的当前稳定版本:

#yum install -y docker-compose
#sudo apt install docker-compose
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
#https://github.com/docker/compose/releases/download/1.25.0-rc4/docker-compose-Linux-x86_64

要安装其他版本的 Compose,请替换 1.24.1。将可执行权限应用于二进制文件:

$ sudo chmod +x /usr/local/bin/docker-compose

创建软链:

$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

测试是否安装成功:
注意: 对于 alpine,需要以下依赖包: py-pip,python-dev,libffi-dev,openssl-dev,gcc,libc-dev,和 make。

$ sudo docker-compose version

2.下载配置harbor源码

  • 安装harbor官方文档

  • harbor源码github地址

wget https://github.com/goharbor/harbor/archive/v2.1.0-rc1.tar.gz
tar -xvf v2.1.0-rc1.tar.gz
mv harbor-2.1.0-rc1 harbor
cd harbor/make
cp harbor.yml.tmpl harbor.yml
##这里根据实际情况,编译harbor.yml
vi harbor.yml

3.配置harbor.yml文件

hostname: 192.168.110.100
http:port: 80
database:password: root123
harbor_admin_password: Harbor12345  #默认
log:location: /data/harbor/logs
data_volume: /data/harbor/
  • hostname:配置主机名称,不可以设置127.0.0.1,localhost这样的主机名,可以是IP或者域名
  • ui_url_protocol:指定使用HTTP协议还是HTTPS协议
  • Email settings:邮箱设置,option配置,只在首次启动生效,可以登陆UI后修改
  • harbor_admin_password:设置管理员的初始密码,只在第一次登录时- 使用
  • auth_mode:用户认证模式,默认是db_auth,也可以使用ldap_auth验证。
  • db_password:使用db需要指定连接数据库的密码
  • self_registration:是否允许自行注册用户,默认是on,新版本可以在图形界面中修改。
  • max_job_workers:最大工作数,默认是10个
  • customize_crt:是否为token生成证书,默认为on
  • ssl_cert:nginx cert与key文件的路径, 只有采用https协议是才有意义
  • ssl_cert:nginx cert与key文件的路径, 只有采用https协议是才有意义
  • secretkey_path:The path of secretkey storage
  • admiral_url:Admiral’s url, comment this attribute, or set its value to NA when Harbor is standalone
  • clair_db_password:未启用calir服务,但解压目录下的"./prepare"文件中要检查以下相关参数配置,不能注释,否则环境准备检查不能通过,报"ConfigParser.NoOptionError: No option u’clair_db_password’ in section: u’configuration’ “相关错误;或者在”./prepare"中注释相关检查与定义,但需要注意,文件中的关联太多,推荐修改"harbor.cfg"文件即可
  • ldap_url:ladp相关设置,如未采用ldap认证,但解压目录下的"./prepare"文件中要检查以下相关参数配置,不能注释,否则环境准备检查不能通过,报"ConfigParser.NoOptionError: No option u’ldap_timeout’ in section: u’configuration’ “相关错误;或者在”./prepare"中注释相关检查与定义,但需要注意,文件中的关联太多,推荐修改"harbor.cfg"文件即可
  • self_registration:默认开启自注册,off为关闭
  • token_expiration:token有效时间,默认30minutes
  • project_creation_restriction:创建项目权限控制,默认是"everyone"(所有人),可设置为"adminonly"(管理员)
  • verify_remote_cert:与远程registry通信时是否采用验证ssl

4.执行安装harbor

#设置完harbor.yml可以安装
./install.sh
  • 问题:ERROR: manifest for goharbor/harbor-log:v2.2.0-build.3927 not found。

  如果遇到问题,ERROR: manifest for goharbor/harbor not found。是因为最新harbor版本的问题,需要修改install.sh文件。在87行进行如下修改,添加替换版本号。因为prepare脚本会重新生成docker-composer.yml文件,在其步骤之后之间替换最新版本harbor版本号。harbor最新版本号可以通过官方网站进行查询tag的版本。

./prepare $prepare_para
sed -i "s/v2.2.0-build.3927/v2.0.2/g" docker-compose.yml

5.测试harbor的Web界面


  配置Nginx,然后登录IP:80 地址。安装好后是默认用户名和密码如下: user:admin password:Harbor12345

6.提交测试镜像

  • http登录

如果采用http登录,需要修改docker配置。在/etc/sysconfig/ 没有docker这个配置文件的情况下创建文件添加:

#在daemon.json中添加以下参数
[root@localhost harbor]# cat /etc/docker/daemon.json
#harbor的docker login 失败为例
{"insecure-registries": ["harbor.cfg中name的域名或者ip"]
}
  • 镜像拉取和提交
$ docker pull alpine #拉取测试用容器
$ docker run -itd --name docker_name alpine
...
$ docker stop           #修改容器后停止
$ docker commit -m "message" -a "author" docker_name  repository_author/repository_name:V2      #提交容器,设置V2版本号
$ docker tag repository_author/repository_name:V2 192.168.110.100/library/repo_name:V3          #可以根据情况修改提交tag和名称专门用于上传提交镜像,其中192.168.110.100为本地ip或域名;library为harbor中已创建项目名称,如果没有则无法上传成功;
$ docker images
REPOSITORY                          TAG                 IMAGE ID            CREATED             SIZE
192.168.110.100/library/repo_name   V3                  deb7360bb5c4        36 minutes ago      5.57MB
repository_author/repository_name   V2                  deb7360bb5c4        36 minutes ago      5.57MB
$ docker login 192.168.110.100
#推送镜像到harbor
$ docker push 192.168.110.100/library/repo_name:V3


  • 本文源站链接地址:Harbor安装和简单使用

  • 参考文档:

    • K8S集群学习笔记整理
    • Docker Compose安装

虚拟机搭建Harbor安装和简单使用相关推荐

  1. win10虚拟机搭建+Qt6安装

    win10虚拟机搭建+Qt6安装 1 系统下载 2 配置环境变量 3 修改默认构建目录 参考 1 系统下载 从系统之家和itellyou下载的win10,vmware安装显示"Operati ...

  2. harbor安装_Harbor简单安装部署,镜像仓库存储使用阿里云OSS

    使用docker-compose创建,此方法简单,问题是无法做到高可用. 环境准备: Harbor使用最新版本的harbor-offline-installer-v2.0.2.tgz 下载链接: ht ...

  3. Java入门及环境搭建idea安装和简单使用

    Java入门及环境搭建 什么是Java Java Java是一门新的语言特点是: 语法有点像c 没有指针 没有内存管理 真正的可移植性,编写一次,到处运行. 面向对象 类型安全 高质量的类库 - Ja ...

  4. 甲骨文云上使用arm架构实例和对象存储搭建Harbor

    今天尝试使用甲骨文云的arm实例(4ocpus+24Gb memory)搭建Harbor,并且存储使用甲骨文云兼容S3协议的对象存储. 事情准备 准备好arm架构的实例,防火墙开放80和443端口,设 ...

  5. win7下LInux虚拟机搭建

    滴~ 今日打卡!今天来分享虚拟机搭建 1.安装VMware 下载地址:https://my.vmware.com/cn/web/vmware/evalcenter?p=horizon-7  进入下载- ...

  6. virtualbox虚拟机安装以及简单配置

    一.虚拟机平台选择 一般大多都是用VMware-workstation,网上的教程比较多,因为我之前搭建dnf私服服务器时,相关的服务器资源都是在vmware平台上的,所以vmware遇到问题解决的应 ...

  7. 实验六系统安装与简单配置(Linux基础教程 第2版)虚拟机环境下安装龙蜥操作系统(Anolis OS) 8.4

    一.实验目的 1.安装虚拟机VMware-workstation-full-15.5.6-16341506. 2.在虚拟机环境下安装龙蜥操作系统(Anolis OS) 8.4. 3.简单配置Linux ...

  8. 利用闲置电脑安装虚拟机搭建hadoop集群

    文章目录 前言 一.虚拟机环境的准备 二.连接虚拟机上的集群 1.整理需要连接的端口 2.配置VMware上虚拟机的端口转发 3.测试连接 总结 前言 本人刚开始学习大数据,记录自己的一些学习笔记.大 ...

  9. 单机版Fate安装教程(含虚拟机搭建)

    单机版Fate安装教程(含虚拟机搭建) 1.虚拟机安装 1)下载VMware https://www.vmware.com/products/workstation-player/workstatio ...

  10. 网络安全 Kali虚拟机的安装和简单使用

    一.前言 最近突然对网络安全有兴趣,便升级了电脑配置,下载了Kali Linux和几个测试机,下面记录一下下载安装和简单使用的全过程 二.软件工具准备: Vmware 虚拟机 v12或V15版本 Wi ...

最新文章

  1. Linux 下获取本机所有网卡 以及 网卡对应ip 列表
  2. python输出去空格_Python3基础 print(,end=) 输出内容的末尾加入空格
  3. SSM实现个人博客-day03
  4. linux 查看cpu和磁盘使用情况
  5. python的subprocess模块执行shell命令
  6. html把div分成两栏,div+css制作上中下,中间两列的全屏自适应布局
  7. 【NLP】毕设学习笔记(二)transformer
  8. linux运行彩虹猫,如何在在 Linux 命令行中观看彩虹猫
  9. 零基础30天入门Python教程第6节:数据结构
  10. 数据分析 时间序列分析 ARMA模型
  11. 共享文件夹加密专家_文件加密_公司如何防止员工内部泄密?
  12. 八爪鱼数据采集教程(一)
  13. 阿兹卡塔防 Azgard Defense 详细攻略
  14. xp下电脑关机超级慢
  15. 树莓派人脸表情识别中期报告
  16. 零基础入门语音识别-食物声音识别
  17. karabiner json语法
  18. ubuntu下ati驱动安装
  19. C语言学习记录-----이 初识C语言(2)
  20. (转)三款免费Win7系统摄像头录制工具

热门文章

  1. GC回收算法--当女友跟你提分手!
  2. TortoiseGit拉取gitee代码
  3. 明天省赛,我都还不太熟悉Dev - C++,怎么切换成C++11了?它的报错看不懂呀,那花八分钟看看这篇文章吧~解决你的困惑。
  4. login.defs文件基础
  5. java web 注册登录_javaweb实现登录注册功能实例
  6. OpenCV-python 自制图片画框脚本
  7. 10、I/O 输入输出流
  8. 从何处来,往何处去——关于数学起源和目的思考
  9. 图像超分辨率重建原理学习
  10. kaggle代码补全