下载安装包并导入镜像

# 进入文件下载目录
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. Get Your Wish

    Get Your Wish (https://www.luogu.com.cn/problem/P7262) 一个模拟题 解读一下题目:简单来说就是在现在重力的方向上,如果有水滴和电子元件就GG,否则 ...

  2. Disruptor-源码解读

    前言 Disruptor的高性能,是多种技术结合以及本身架构的结果.本文主要讲源码,涉及到的相关知识点需要读者自行去了解,以下列出: 锁和CAS 伪共享和缓存行 volatile和内存屏障 原理 此节 ...

  3. 自定义Mybatis-plus插件(限制最大查询数量)

    自定义Mybatis-plus插件(限制最大查询数量) 需求背景 ​ 一次查询如果结果返回太多(1万或更多),往往会导致系统性能下降,有时更会内存不足,影响系统稳定性,故需要做限制. 解决思路 1.经 ...

  4. C#写一套最全的MySQL帮助类(包括增删改查)

    介绍说明:这个帮助类包含了六个主要的方法:ExecuteNonQuery.ExecuteScalar.ExecuteQuery.ExecuteQuery(泛型).Insert.Update和Delet ...

  5. 即时通讯系统为什么选择GaussDB(for Redis)?

    摘要:如果你需要一款稳定可靠的高性能企业级KV数据库,不妨试试GaussDB(for Redis). 每当网络上爆出热点新闻,混迹于各个社交媒体的小伙伴们全都开启了讨论模式.一条消息的产生是如何在群聊 ...

  6. Ajax 方法返回值无效

    遇到错误为再ajax 中返回数据不起作用 原来是因为在阿贾克斯success中不能直接return 需要执行完再进行返回 以下代码为正确代码        function TestAction(id ...

  7. [C++核心编程] 5 文件操作

    文章目录 5 文件操作 5.1文本文件 5.1.1写文件 5.1.2读文件 5.2 二进制文件 5.2.1 写文件 5.2.2 读文件 5 文件操作 程序运行时产生的数据都属于临时数据,程序一旦运行结 ...

  8. 2023-02-28:moonfdd/ffmpeg-go是用go语言绑定ffmpeg的库,目前是github上最好用的库。请用go语言将yuv文件编码为h264文件。

    2023-02-28:moonfdd/ffmpeg-go是用go语言绑定ffmpeg的库,目前是github上最好用的库.请用go语言将yuv文件编码为h264文件. 答案2023-02-28: 使用 ...

  9. SQL Server:User, group, or role 'iemis' already exists in the current database.

    --最新的解决方法 --先创建用户帐户,不进行授权,然后通过下面的SQL语句将该用户帐户关联至对应的数据库用户.优点是避免了重新授权的操作. USE tempdbEXEC sp_change_user ...

  10. c3p0的配置及简单应用

    首先简单了解一下JDBC和c3p0 Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸 ...