根据Harbor官方描述:

Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全、标识和管理等,扩展了开源Docker Distribution。作为一个企业级私有Registry服务器,Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。Harbor支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry中, 确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。

注:1.8之前的版本用起来比较麻烦,还要生成https证书,1.8直接拿过来就用,而且低版本的启动时候有几个容器一直在显示重启中,就先写一个高版本的安装

安装前提:

前面的文章说过,要替换高版本的docker,这里就展示一下版本信息

[root@topcheer tmp]# docker --version
Docker version 19.03.4, build 9013bf583a
[root@topcheer tmp]#

也要安装docker-compose

[root@topcheer ~]# curl -L https://github.com/docker/compose/releases/download/1.24.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 617 0 617 0 0 382 0 --:--:-- 0:00:01 --:--:-- 383
100 15.4M 100 15.4M 0 0 35739 0 0:07:32 0:07:32 --:--:-- 62373
[root@topcheer ~]# chmod +x /usr/local/bin/docker-compose
[root@topcheer ~]# docker-compose

如果你联网下载比较慢,我这边也提供了百度云链接,下载赋权即可

https://pan.baidu.com/s/1-rn42OBPnUu16uF8xeNCQA

下载压缩包:

去harbor官网:https://goharbor.io/

点击release,下载harbor离线包,这里选择最新版本的1.8.0

下载下来的文件名为:harbor-offline-installer-v1.8.0.tgz

百度云:https://pan.baidu.com/s/1kguKaY43GJo_D9JcSdk2vw

解压:

tar   -zxvf   harbor-offline-installer-v1.8.0.tgz

-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

配置harbor.yml

较重要参数说明

   hostname 目标主机的主机名,用于访问Portal和注册表服务。它应该是目标计算机的IP地址或完全限定的域名(FQDN),例如,192.168.1.10reg.yourdomain.com。不要使用localhost127.0.0.1作为主机名 - 外部客户端需要访问注册表服务

这里修改为我们的主机ip即可 例如修改为 10.10.55.55

data_volume: 存储 harbor 数据的位置。 这里可以修改 为 /usr/local/workspace/harbor/data

harbor_admin_password:管理员的初始密码。此密码仅在Harbor首次启动时生效。之后,将忽略此设置,并且应在Portal中设置管理员密码。请注意,默认用户名/密码为admin / Harbor12345。

关于端口配置:

  • http:

    • port:你的http的端口号

  • https:用于访问Portal和令牌/通知服务的协议。如果启用了公证,则必须设置为https。请参阅使用HTTPS访问配置Harbor

    • port:https的端口号

    • certificate:SSL证书的路径,仅在协议设置为https时应用。

    • private_key:SSL密钥的路径,仅在协议设置为https时应用。

安装:

# 执行  ./prepare
./prepare


# 执行 ./install.sh
./install.sh# 查看启动情况docker-compose ps

[root@topcheer harbor]# docker-compose ps
Name Command State Ports
---------------------------------------------------------------------------------------------
harbor-core /harbor/start.sh Up (healthy)
harbor-db /entrypoint.sh postgres Up (healthy) 5432/tcp
harbor-jobservice /harbor/start.sh Up
harbor-log /bin/sh -c /usr/local/bin/ ... Up (healthy) 127.0.0.1:1514->10514/tcp
harbor-portal nginx -g daemon off; Up (healthy) 80/tcp
nginx nginx -g daemon off; Up (healthy) 0.0.0.0:80->80/tcp
redis docker-entrypoint.sh redis ... Up 6379/tcp
registry /entrypoint.sh /etc/regist ... Up (healthy) 5000/tcp
registryctl /harbor/start.sh Up (healthy)
[root@topcheer harbor]#

使用:

配置免https

方法一:修改 /etc/docker/daemon.json

vi /etc/docker/daemon.json# 加上 允许的仓库
{
"insecure-registries":[
"192.168.180.105"
]
}

方法二

# 修改 docker.service
cd /usr/lib/systemd/system

vi docker.service


# 修改 ExecStart,添加 --insecure-registry 参数
ExecStart=/usr/bin/dockerd --insecure-registry 192.168.180.105 -
两种方法都需要重启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

登录查看

新建公开项目 topcheer

4.3 上传镜像

# 修改待上传镜像的tag
[root@topcheer system]# docker tag nginx:latest 192.168.180.105/topcheer/nginx:1.1
[root@topcheer system]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
192.168.180.105/topcheer/docker 1.0.1 4bc3d0f928cc 2 hours ago 643MB
192.168.180.105/topcheer/register-server 1.0.1 14ffc8c30b67 2 hours ago 731MB
192.168.180.105/topcheer/nginx 1.1 540a289bab6c 13 days ago 126MB
# linux 上登录harbor仓库
# 10.10.xx.xx 表示 linux服务器地址,请换成自己的服务器ip# 注意要说明自己登陆哪个ip,不然默认会登陆[root@topcheer system]# docker login 127.0.0.1
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@topcheer system]# docker push 192.168.180.105/topcheer/nginx:1.1
The push refers to repository [192.168.180.105/topcheer/nginx]
a89b8f05da3a: Pushed
6eaad811af02: Pushed
b67d19e65ef6: Pushed
1.1: digest: sha256:f56b43e9913cef097f246d65119df4eda1d61670f7f2ab720831a01f66f6ff9c size: 948
[root@topcheer system]#

注:别的2个是通过maven插件打包部署过来的,后面一章在说明。

Linux下安装Harbor 1.8.0 仓库的安装和使用(亲测)的更多相关文章

  1. docker(三):Harbor 1.8.0 仓库的安装和使用

    回顾: docker(一):docker是什么? docker(二):CentOS安装docker docker(部署常见应用):docker部署mysql 安装的先决条件 硬件环境 1.CPU    ...

  2. Harbor 1.8.0 仓库的安装和使用

    安装的先决条件 硬件环境 1.CPU    至少2G,最好4G 2.内存    至少4G,最好8G 3.磁盘    至少40G,最好160G 软件环境 1.docker版本    17.03.0-ce ...

  3. Linux下切换root用户提示Authentication failure错误的解决方法(亲测有效)

    第一种情况可能是root密码输入错误造成的,再仔细检查一遍是否输入错误 第二种是刚安装完,没有设置root用户密码导致的,我的就是最小化安装,就会出现这种小问题 解决办法:sudo passwd 然后 ...

  4. Linux下的暴力密码在线破解工具Hydra安装及其组件安装-使用

    Linux下的暴力密码在线破解工具Hydra安装及其组件安装-使用 hydra可以破解: http://www.thc.org/thc-hydra,可支持AFP, Cisco AAA, Cisco a ...

  5. linux下怎么卸载自带的JDK和安装想要的JDK

    linux下怎么卸载自带的JDK和安装想要的JDK   安装linux系统后,系统有自带jdk的版本,因为系统中的有些软件需要使用此环境.但时候我们安装eclipse和tomcat的时候,使用此jdk ...

  6. Centos 7.0 下安装 Zabbix server 3.0服务器的安装及 监控主机的加入(1)

    一.本系列分为6部分 1.Centos 7.0 下安装 Zabbix server 3.0服务器的安装及 监控主机的加入 2.Centos 6.5 下安装 Zabbix server 3.0服务器的安 ...

  7. Linux下python3、virtualenv、Mysql、redis安装配置

    一.在Linux安装python解释器 1.下载python3源码包 cd /opt/ wget https://www.python.org/ftp/python/3.6.2/Python-3.6. ...

  8. linux下使用localhost和127.0.0.1都不能连接的解决思路

    linux下刚安装了mysql,尝试写了程序连接mysql,出现了只有用本地ip地址才能连接,而127.0.0.1和localhost都不能访问 解决这个问题主要查看3个方向 .hosts中是否有ip ...

  9. 如何在Linux下使用Gitblit工具创建Git仓库服务

    嗨!朋友,今天我们将学习如何在你的Linux服务器或者PC上安装Gitblit工具.首先,我们看看什么是Git,它的功能以及安装Gitblit的步骤.Git是分布式版本控制系统,它强调速度.数据一致性 ...

随机推荐

  1. 封装redis(set/get/delete)str和哈希类型

    将Redis的常用操作封装了一下: import redis class MyRedis(): def __init__(self,ip,passwd,port=6379,db=0): #构造函数 t ...

  2. jmeter之跨线程组共享cookies

    jmeter在一个线程组里,可以把登录接口放在上面,再添加一个cookies管理器元件,这样下一个接口就可以携带登录信息.在不同线程组里其实也可以共享cookies 目录 1.方法 2.应用 1.方法 ...

  3. Golang闭包的坑

    team leader 发现一个Golang程序的bug,是由不正确使用闭包引起.记载一下,以作备忘. 猜猜一下程序的结果: import ( "fmt" "time&q ...

  4. jvm jstack log分析工具,在线分析

    http://spotify.github.io/threaddump-analyzer Spotify提供的Web版在线分析工具,可以将锁或条件相关联的线程聚合到一起.

  5. 安装mysql8.0.17时候报错1251-Client does not support authentication protocol requested by server; consider upgrading MySQL client

    当mysql数据库安装时候选择的是加密密码时候,用navicat连接时候报错1521,这时候可以cmd之后登陆mysql执行下列代码就可以了 代码: mysql> alter user root ...

  6. idea中gradle的springboot的项目热部署

    1:在build.gradle中添加热部署依赖(我gradle版本是5.5.1) // 添加 热部署依赖implementation 'org.springframework.boot:spring- ...

  7. Git-第五篇廖雪峰Git教程学习笔记(4)分支

    1.一开始,只有一个主分支(master),HEAD指向Master,而Master指向主分支.现在我们创建dev分支. lfy@lfy-PC MINGW64 /c/fyliu/lfyTemp/git ...

  8. [常用类]Math、Random、System、BigInteger、BigDecimal

    Math类中的成员全是静态成员,构造方法是 私有的,以避免被创建对象 常用方法: int abs() double ceil() //向上取整 double floor() //向下取整 int ma ...

  9. 在学习linux磁盘管理期间学习的逻辑卷管理笔记

    LVM(逻辑分区)的创建顺序:物理分区-物理卷-卷组-逻辑卷-挂载. 物理卷(Physical Volume,PV):就是指硬盘分区,也可以是整个硬盘或已创建的软RAID,是LVM的基本存储设备. 卷 ...

  10. 入手node

    一.安装node(查询使用npm) 二.安装淘宝镜像(查询使用cnpm,安装淘宝镜像之后下载速度会更快) 三.安装相关资料时,在预安装的文件夹使用: shift + 右键, 打开命令行窗口,进入终端