下载安装包并导入镜像

# 进入文件下载目录
cd /root/software/ # 下载安装文件
# 如果下载失败可以本地下载,下载后上传至服务器,https://github.com/goharbor/harbor/releases
wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v2.1.0.tgz # 解压文件
tar xvf harbor-offline-installer-v2.1.0.tgz -C /usr/local/ # 导入docker镜像
cd /usr/local/harbor
docker image load -i harbor.v2.1.0.tar.gz

导入镜像完成后如下所示,以goharbor为前缀的是Harbor要使用的镜像:

REPOSITORY                           TAG                 IMAGE ID            CREATED             SIZE
goharbor/chartmuseum-photon v2.1.0 5bad3dce5fd5 6 days ago 172MB
goharbor/redis-photon v2.1.0 45fa455a8eeb 6 days ago 68.7MB
goharbor/trivy-adapter-photon v2.1.0 9b443d147b3d 6 days ago 106MB
goharbor/clair-adapter-photon v2.1.0 cee42542dfb2 6 days ago 57.9MB
goharbor/clair-photon v2.1.0 9741a40b433c 6 days ago 167MB
goharbor/notary-server-photon v2.1.0 e20ff73edec7 6 days ago 139MB
goharbor/notary-signer-photon v2.1.0 2b783b793805 6 days ago 136MB
goharbor/harbor-registryctl v2.1.0 98f466a61ebb 6 days ago 132MB
goharbor/registry-photon v2.1.0 09c818fabdd3 6 days ago 80.1MB
goharbor/nginx-photon v2.1.0 470ffa4a837e 6 days ago 40.1MB
goharbor/harbor-log v2.1.0 402802990707 6 days ago 82.1MB
goharbor/harbor-jobservice v2.1.0 ff65bef832b4 6 days ago 165MB
goharbor/harbor-core v2.1.0 26047bcb9ff5 6 days ago 147MB
goharbor/harbor-portal v2.1.0 5e97d5e230b9 6 days ago 49.5MB
goharbor/harbor-db v2.1.0 44c0be92f223 6 days ago 164MB
goharbor/prepare v2.1.0 58d0e7cee8cf 6 days ago 160MB
quay.io/coreos/flannel v0.13.0-rc2 79dd6d6368e2 6 days ago 57.2MB
k8s.gcr.io/kube-proxy v1.18.5 a1daed4e2b60 2 months ago 117MB
k8s.gcr.io/kube-apiserver v1.18.5 08ca24f16874 2 months ago 173MB
k8s.gcr.io/kube-controller-manager v1.18.5 8d69eaf196dc 2 months ago 162MB
k8s.gcr.io/kube-scheduler v1.18.5 39d887c6621d 2 months ago 95.3MB
k8s.gcr.io/pause 3.2 80d28bedfe5d 7 months ago 683kB
k8s.gcr.io/coredns 1.6.7 67da37a9a360 7 months ago 43.8MB
k8s.gcr.io/etcd 3.4.3-0 303ce5db0e90 11 months ago 288MB

修改配置文件

# 进入安装包加压后目录
cd /usr/local/harbor # 拷贝配置模板
cp harbor.yml.tmpl harbor.yml # 编辑配置文件
vim harbor.yml

修改后配置文件如下所示:

# 修改IP地址
# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: 10.170.128.9 # 修改端口号
# http related config
http:
# port for http, default is 80. If https enabled, this port will redirect to https port
port: 83 # 注释https相关内容
# https related config
#https:
# https port for harbor, default is 443
#port: 443
# The path of cert and key files for nginx
#certificate: /your/certificate/path
#private_key: /your/private/key/path

检测harbor

cd /usr/local/harbor

./prepare

输出结果如下:

prepare base dir is set to /usr/local/harbor
WARNING:root:WARNING: HTTP protocol is insecure. Harbor will deprecate http protocol in the future. Please make sure to upgrade to https
Generated configuration file: /config/portal/nginx.conf
Generated configuration file: /config/log/logrotate.conf
Generated configuration file: /config/log/rsyslog_docker.conf
Generated configuration file: /config/nginx/nginx.conf
Generated configuration file: /config/core/env
Generated configuration file: /config/core/app.conf
Generated configuration file: /config/registry/config.yml
Generated configuration file: /config/registryctl/env
Generated configuration file: /config/registryctl/config.yml
Generated configuration file: /config/db/env
Generated configuration file: /config/jobservice/env
Generated configuration file: /config/jobservice/config.yml
Generated and saved secret to file: /data/secret/keys/secretkey
Successfully called func: create_root_cert
Generated configuration file: /compose_location/docker-compose.yml
Clean up the input dir

安装harbor

cd /usr/local/harbor

./install.sh

当显示下面结果时,证明已经安装完成:

Creating redis ... done
Creating harbor-core ... done
Creating network "harbor_harbor" with the default driver
Creating nginx ... done
Creating redis ...
Creating registry ...
Creating harbor-db ...
Creating harbor-portal ...
Creating registryctl ...
Creating harbor-core ...
Creating nginx ...
Creating harbor-jobservice ...
----Harbor has been installed and started successfully.----

查看相关容器运行结果

docker ps

执行结果如下:

CONTAINER ID        IMAGE                                COMMAND                  CREATED              STATUS                        PORTS                       NAMES
7310212b3283 goharbor/harbor-jobservice:v2.1.0 "/harbor/entrypoint.…" About a minute ago Up About a minute (healthy) harbor-jobservice
b0dfde9a5176 goharbor/nginx-photon:v2.1.0 "nginx -g 'daemon of…" About a minute ago Up About a minute (healthy) 0.0.0.0:83->8080/tcp nginx
ad83a154eef4 goharbor/harbor-core:v2.1.0 "/harbor/entrypoint.…" About a minute ago Up 59 seconds (healthy) harbor-core
715f26c96edd goharbor/harbor-portal:v2.1.0 "nginx -g 'daemon of…" About a minute ago Up About a minute (healthy) harbor-portal
93ae5f5a4ef0 goharbor/harbor-db:v2.1.0 "/docker-entrypoint.…" About a minute ago Up About a minute (healthy) harbor-db
10c07afdfa76 goharbor/harbor-registryctl:v2.1.0 "/home/harbor/start.…" About a minute ago Up About a minute (healthy) registryctl
8b5295f4be2d goharbor/redis-photon:v2.1.0 "redis-server /etc/r…" About a minute ago Up About a minute (healthy) redis
2058a727da79 goharbor/registry-photon:v2.1.0 "/home/harbor/entryp…" About a minute ago Up About a minute (healthy) registry
8117d47b1cd7 goharbor/harbor-log:v2.1.0 "/bin/sh -c /usr/loc…" About a minute ago Up About a minute (healthy) 127.0.0.1:1514->10514/tcp harbor-log

设置harbor开启启动

# 创建开启启动服务文件
vim /lib/systemd/system/harbor.service

开机启动服务文件内容:

[Unit]
Description=Harbor
After=docker.service systemd-networkd.service systemd-resolved.service
Requires=docker.service
Documentation=http://github.com/vmware/harbor [Service]
Type=simple
Restart=on-failure
RestartSec=5
ExecStart=/usr/bin/docker-compose -f /usr/local/harbor/docker-compose.yml up
ExecStop=/usr/bin/docker-compose -f /usr/local/harbor/docker-compose.yml down [Install]
WantedBy=multi-user.target
# 启动harbor
systemctl start harbor # 设置开机启动
systemctl enable harbor

访问镜像仓库

# 地址
http://10.170.128.9:83/

备注,不用执行:docke-compose相关命令

# 在该目录下执行
cd /usr/local/harbor docker-compose up -d # 后台启动,如果容器不存在根据镜像自动创建
docker-compose down -v # 停止容器并删除容器
docker-compose start # 启动容器,容器不存在就无法启动,不会自动创建镜像
docker-compose stop # 停止容器

Centos 7安装Docker镜像仓库-Harbor的更多相关文章

  1. docker 镜像仓库 Harbor 部署 以及 跨数据复制

    docker 镜像仓库 Harbor 部署 跨数据复制 Harbor 是 Vmwar 公司开源的 企业级的 Docker Registry 管理项目 它主要 提供 Dcoker Registry 管理 ...

  2. 离线手动部署docker镜像仓库——harbor仓库(HTTPS)

    实验环境: harbor服务器系统:CentOS Linux release 7.5.1804 (Core)harbor服务器IP:10.1.12.114harbor版本:v1.5.0docker版本 ...

  3. Docker镜像仓库Harbor之Swagger REST API整合配置

    转载自:https://cloud.tencent.com/developer/article/1010618 1.Swagger 介绍 Swagger 是一个规范和完整的框架,用于生成.描述.调用和 ...

  4. 企业级Docker镜像仓库Harbor部署与使用

    yum install docker 官网地址:https://docs.docker.com/compose/install/ 运行此命令以下载Docker Compose的当前稳定版本 1 sud ...

  5. Docker镜像仓库Harbor搭建及配置

    一.harbor简介 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docker Distribut ...

  6. Docker镜像仓库Harbor之搭建及配置

    目录 Harbor介绍环境.软件准备Harbor服务搭建Harbor跨数据复制配置FAQ1.Harbor 介绍 Docker容器应用的开发和运行离不开可靠的镜像管理,虽然Docker官方也提供了公共的 ...

  7. Docker镜像仓库Harbor部署

    一.Harbor组件 组件 功能 harbor-adminserver 配置管理中心 harbor-db Mysql数据库 harbor-jobservice 负责镜像复制 harbor-log 记录 ...

  8. Docker镜像仓库Harbor安装

    export VERSION=18.06 && curl -fsSL http://rainbond-pkg.oss-cn-shanghai.aliyuncs.com/releases ...

  9. Docker(二):Docker镜像仓库Harbor搭建

    安装docker-compose 因为docker-compose下载容易失败, 所以选择从github下载方式安装. [root@harbor ~]# mv docker-compose-Linux ...

  10. Docker镜像仓库Harbor搭建

    园子里面已经有人写过了.也写得很好,我这里只记录下我遇到的问题 Harbor 依赖: 1:docker 2:docker-compose 怎么安装就不说了. 然后是安装Harbor github:ht ...

随机推荐

  1. SpringBoot2 简明教程

    1.环境配置: ●Java 8 & 兼容java14 .●Maven 3.3+●idea 2019.1.2 maven的settings.xml配置 <mirrors> <m ...

  2. Java学习笔记03

    1. 流程控制语句 在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.所以,我们必须清楚每条语句的执行流程.而且,很多时候要通过控制语句的执行顺序来实现我们想要的功能. 1.1 分 ...

  3. 可视化大屏:mapbox+vue全攻略

    如题图,mapbox是一个支持真3D地形展示的webGIS框架,与常用的Leaflet.Cesium和Openlayers并称四大框架,本文将介绍mapbox-gl js 在 vue 中的用法. 为什 ...

  4. Spring注解@Conditional相关用法

    1.@Conditional注解 @Conditional 是Spring4新提供的注解. 它的作用是按照一定的条件进行判断,满足条件给容器注册bean,否则不注入. 可以作用在方法上,也可以作用在类 ...

  5. 如何建设一个用于编译 iOS App 的 macOS 云服务器集群?

    作者:京东零售 叶萌 现代软件开发一般会借助 CI/CD 来提升代码质量.加快发版速度.自动化重复的事情,iOS App 只能在 mac 机器上编译,CI/CD 工具因此需要有一个 macOS 云服务 ...

  6. 【机器学习与深度学习理论要点】11.什么是L1、L2正则化?

    机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作 L1-norm 和L2-norm,中文称作 L1正则化 和 L2正则化,或者 L1范数 和 L2范数.L1正 ...

  7. 【必知必会的MySQL知识】⑤DQL语言

    目录 一.前言 二.基础查询 2.1 语法 2.2 实践操作 三.条件查询 3.1 语法 3.2 where 语句操作符 3.3 实践操作 四.排序查询 4.1 语法格式 4.2 实践操作 五.分组查 ...

  8. 2022-05-20:给定一个正数数组arr,长度为N,依次代表N个任务的难度,给定一个正数k, 你只能从0任务开始,依次处理到N-1号任务结束,就是一定要从左往右处理任务, 只不过,难度差距绝对值不

    2022-05-20:给定一个正数数组arr,长度为N,依次代表N个任务的难度,给定一个正数k, 你只能从0任务开始,依次处理到N-1号任务结束,就是一定要从左往右处理任务, 只不过,难度差距绝对值不 ...

  9. 2022-02-11:单词缩写。 给定一个由n个不重复非空字符串组成的数组,你需要按照以下规则为每个单词生成最小的缩写。 初始缩写由起始字母+省略字母的数量+结尾字母组成。 若存在冲突,亦即多于一个单

    2022-02-11:单词缩写. 给定一个由n个不重复非空字符串组成的数组,你需要按照以下规则为每个单词生成最小的缩写. 初始缩写由起始字母+省略字母的数量+结尾字母组成. 若存在冲突,亦即多于一个单 ...

  10. 2022-01-29:连接词。 给你一个 不含重复 单词的字符串数组 words ,请你找出并返回 words 中的所有 连接词 。 连接词 定义为:一个完全由给定数组中的至少两个较短单词组成的字符串

    2022-01-29:连接词. 给你一个 不含重复 单词的字符串数组 words ,请你找出并返回 words 中的所有 连接词 . 连接词 定义为:一个完全由给定数组中的至少两个较短单词组成的字符串 ...