千家信息网

企业级镜像仓库harbor搭建(http/https)及使用

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,1.Harbor简介Harbor是由VMWare公司开源的容器镜像仓库。事实上,Harbor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括
千家信息网最后更新 2026年11月02日企业级镜像仓库harbor搭建(http/https)及使用

1.Harbor简介
Harbor是由VMWare公司开源的容器镜像仓库。事实上,Harbor是在Docker Registry上进行了相应的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基于角色的访问控制,AD/LDAP集成以及审计日志等,足以满足基本企业需求。
2.安装docker-ce
1)安装依赖包
[root@harbor opt]# yum install -y yum-utils device-mapper-persistent-data lvm2
2)下载docker-ce 仓库
[root@harbor opt]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
官方比较慢的话,可以使用阿里云的docker-ce.repo
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3)更新仓库
yum repolist 或者 yum makecache fast
4)安装docker-ce
[root@harbor opt]# yum install docker-ce -y
5)配置加速并启动
[root@harbor opt]# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://f1361db2.m.daocloud.io
[root@harbor opt]# systemctl start docker
6) 确认安装完成
[root@harbor opt]# docker version

3.安装docker-compose
第一种方式:yum 安装
[root@harbor opt]# yum install docker-compose -y
第二种方式:下载可执行文件:
[root@harbor opt]# curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
[root@harbor opt]# chmod +x /usr/local/bin/docker-compose
确认安装完成:

4.安装harbor
[root@harbor opt]# cd /opt
[root@harbor opt]# wget https://storage.googleapis.com/harbor-releases/harbor-offline-installer-v1.6.1.tgz
[root@harbor opt]# tar -xf harbor-offline-installer-v1.6.1.tgz
[root@harbor opt]# cd harbor/
[root@harbor opt]# vim harbor.cfg
hostname = reg.slito.com \harbor的服务地址(ip或者域名)
ui_url_protocol = http \选择http方式
harbor_admin_password = 123456 \harbor web访问的密码
[root@harbor harbor]# ./prepare \加载配置

[root@harbor harbor]# ./install.sh \安装harbor

安装完成后,提示通过" http://reg.slito.com" 访问harbor,用户名是admin,密码是之前设置的123456

5.上传镜像到harbor仓库
在本机配置harbor仓库http可信
/etc/docker/daemon.json中添加""insecure-registries":["reg.slito.com"]",重启docker

不然会报错,默认是走https的

在node1上登录harbor仓库,上传/下载镜像
[root@node1 ~]# docker login reg.slito.com
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@node1 ~]# docker tag busybox reg.slito.com/library/busybox:v1
[root@node1 ~]# docker push reg.slito.com/library/busybox:v1
The push refers to repository [reg.slito.com/library/busybox]
8a788232037e: Pushed
v1: digest: sha256:915f390a8912e16d4beb8689720a17348f3f6d1a7b659697df850ab625ea29d5 size: 527
[root@node1 ~]#
在harbor中查看

6.下载harbor中的镜像
先删掉原来的镜像
[root@node1 ~]# docker rmi reg.slito.com/library/busybox:v1
重新从harbor pull
[root@node1 ~]# docker pull reg.slito.com/library/busybox:v1
确认
[root@node1 ~]# docker images | grep busybox
reg.slito.com/library/busybox v1 59788edf1f3e 8 weeks ago 1.15MB

7.配置https访问
1) 安装openssl
#yum install openssl -y
2) 创建证书的database文件index.txt和序列文件serial
[root@harbor opt]# touch /etc/pki/CA/index.txt
[root@harbor opt]# echo "01" > /etc/pki/CA/serial

3) 创建私钥,生成自签证书(用于发放给个人用户)
#(umask 077;openssl genrsa -out /etc/pki/CA/private/cakey.pem)
#openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -out /etc/pki/CA/cacert.pem

4) 客户端生成证书请求(.csr)
#cd /opt/harbor
#mkdir ssl
#cd ssl
#(umask 077;openssl genrsa -out reg.slito.com.key) \生成私钥
#openssl req -new -key reg.slito.com.key -out reg.slito.com.csr \ 生成证书请求
和上面cacert.pem生成时写的结果保持一致

5) 签发证书(本机是CA同时又是申请证书的客户端)
#cd /opt/harbor/ssl
#openssl ca -in reg.slito.com.csr -out reg.slito.com.crt -days 365


6) 修改配置文件,重新启动harbor
#cd /opt/harbor
#docker-compose down -v
#vim harbor.cfg
ui_url_protocol = https
ssl_cert = ./ssl/reg.slito.com.crt
ssl_cert_key = ./ssl/cert/reg.slito.com.key
secretkey_path = ./ssl/
#./prepare
#./install.sh

访问"https://reg.slito.com"

7) 其他主机访问harbor,pull/push镜像设置
拷贝reg.slito.com.crt到需要访问harbor仓库的主机上(/etc/docker/certs.d/reg.slito.com/),目标主机不用配置信任就可以直接访问。
#cp /opt/harbor/ssl/reg.slito.com.crt /etc/docker/certs.d/reg.slito.com/

其他:关于https访问,可以看另一篇博客https://blog.51cto.com/slitobo/1931603

仓库 镜像 配置 证书 生成 文件 企业 主机 方式 用户 客户 客户端 密码 本机 一致 不用 事实 事实上 又是 可信 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 云信互联网科技有限公司 涨乐互联网科技 互联网中国科技 北京互联网科技 美国互联网科技 嘟嘟瓜互联网科技 银优互联网科技有限公司 上海喔噻互联网科技 壹账通互联网科技 老年人脱离互联网科技的作文 常德市电业局互联网科技部 互联网科技公司有风险吗 深圳市优智互联网科技有限公司 云鲸互联网络科技有限公司 互联网科技收购价值 易租星互联网科技有限公司 互联网科技品牌 互联网科技创新创业项目 互联网企业和网络科技有限公司 互联网科技企业文化 华服互联网科技靠谱吗 电子科技大学互联网 长亮科技 互联网金融 互联网金融科技委员会 互联网巨头投资的硬核科技 允成互联网科技有限公司融资 工业互联网等科技实现智能化赋能 朱啸虎曾投资哪些互联网科技企业 有人说阿里系是互联网科技企业 广州全民伙伴互联网科技有限公司
0