首页 > 其他分享 >harbor搭建

harbor搭建

时间:2024-06-13 10:57:30浏览次数:16  
标签:harbor 192.168 58087 镜像 docker 96.146 搭建

1.Harbor简介

Harbor是由VMware公司开源的企业级的Docker Registry管理项目,它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。 作为一个企业级私有 Registry 服务器,Harbor 提供了更好的性能和安全。提升用户使用 Registry 构建和运行环境传输镜像的效率。Harbor 支持安装在多个 Registry 节点的镜像资源复制,镜像全部保存在私有 Registry 中, 确保数据和知识产权在公司内部网络中管控。另外,Harbor 也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。
  • 基于角色的访问控制 - 用户与 Docker 镜像仓库通过 “项目” 进行组织管理,一个用户可以对多个镜像仓库在同一命名空间(project)里有不同的权限。
  • 镜像复制 - 镜像可以在多个 Registry 实例中复制(同步)。尤其适合于负载均衡,高可用,混合云和多云的场景。
  • 图形化用户界面 - 用户可以通过浏览器来浏览,检索当前 Docker 镜像仓库,管理项目和命名空间。
  • AD/LDAP 支持 - Harbor 可以集成企业内部已有的 AD/LDAP,用于鉴权认证管理。
  • 审计管理 - 所有针对镜像仓库的操作都可以被记录追溯,用于审计管理。
  • 国际化 - 已拥有英文、中文、德文、日文和俄文的本地化版本。更多的语言将会添加进来。
  • RESTful API - RESTful API 提供给管理员对于 Harbor 更多的操控,使得与其它管理软件集成变得更容易。
  • 部署简单 - 提供在线和离线两种安装工具, 也可以安装到 vSphere 平台 (OVA 方式) 虚拟设备

2.Harbor搭建

安装说明: Harbor的所有服务组件都是在Docker中部署的,所以官方安装使用Docker-compose快速部署,所以需要安装 Docker、Docker-compose。由于Harbor是基于Docker Registry V2版本,所以就要求Docker版本不小于1.10.0, Docker-compose版本不小于1.6.0。 访问方式:https 安装路径:/opt/software/harbor 挂载路径:/home/harbor_data/ https访问证书路径:/opt/software/harbor_certs/

① 下载并解压安装包

在线下载:
wget https://github.com/goharbor/harbor/releases/download/v2.7.2/harbor-online-installer-v2.7.2.tgz
tar -xvf harbor-online-installer-v2.7.2.tgz
    离线安装(推荐): 先到 Release v2.7.2 · goharbor/harbor · GitHub 下载harbor-online-installer-v2.7.2.tgz安装包,然后解压安装。

② 生成CA证书

  1. 生成文件夹/opt/software/harbor_certs用于存放证书;
  2. 创建key文件
cd /opt/software/harbor_certs
openssl genrsa -out ca.keifconfigy 4096
  1. 生成证书,生成ca.crt和ca.key
openssl req -x509 -new -nodes -sha512 -days 3650 \
 -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=58.210.96.146" \
 -key ca.key \
 -out ca.crt
 

③ 生成服务器证书

  1. 创建私钥
openssl genrsa -out server.key 4096
  1. 生成证书签名请求
openssl req -sha512 -new \
    -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=192.168.96.146" \
    -key server.key \
    -out server.csr
 

④ 生成harbor仓库主机证书

  1. 创建一个 v3.ext 文件
sudo vim v3.ext
写入以下内容:
 authorityKeyIdentifier=keyid,issuer
 basicConstraints=CA:FALSE
 keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
 extendedKeyUsage = serverAuth 
 subjectAltName = IP:192.168.96.146
 
  1. 生成harbor仓库主机证书
openssl x509 -req -sha512 -days 3650 \
    -extfile v3.ext \
    -CA ca.crt -CAkey ca.key -CAcreateserial \
    -in server.csr \
    -out server.crt
   

⑤ 编辑配置文件

进入解压后的harbor文件夹
cp harbor.yml.tmpl harbor.yml  # 复制一份harbor.yml文件
vim harbor.yml
   

https方式:

编辑:
  • hostname改为本机ip(192.168.96.146)
  • 修改为其他指定端口(58087)
  • 向harbor提供证书
  • 修改如下图红框中内容

 

http方式(不推荐,因为需要重启docker):

编辑:
  • hostname改为本机ip(10.0.1.3)
  • 修改为其他指定端口(8087)
  • 修改如下图红框中内容
  • 修改/etc/docker/daemon.json,给insecure-registries中添加”10.0.1.3:8087“
  • 然后执行systemctl daemon-reload 和 systemctl restart docker
image.png    

⑥ 准备安装环境

./prepare  # 执行prepare脚本
    执行完成后,本地生成一个docker-compose.yml文件和common目录;

https方式:

注意!!!:由于在harbor.yml中修改的指定端口是外网的58087,所以在执行./prepare的时候,生成的docker-compose.yml的文件中的端口映射为58087:8443,需要把外网端口58087改成内网端口8087,如下图: 1696734836733.png    

http方式:

注意docker-compose.yml文件端口如下: image.png    

⑦ 安装harbor(只需要安装时执行)

./install.sh  # 安装harbor
  安装过程中会自动下载harbor镜像并启动相关容器。 harbor.yml文件中可查看或修改密码 image.png    

⑧ 启动harbor

cd /opt/software/harbor
sudo docker-compose -f docker-compose.yml up -d
   

使用harbor

1. 访问harbor

网页访问:https://192.168.96.146:58087 默认管理员账号和密码为:admin  Harbor12345

2. 向docker提供证书

将server.crt和ca.crt复制到docker所在的机器固定目录中

1. 创建文件夹
    cd /etc/docker/certs.d
    sudo mkdir 192.168.96.146:58087
2. 复制文件
    sudo cp server.crt /etc/docker/certs.d/192.168.96.146:58087/
    sudo cp ca.crt /etc/docker/certs.d/192.168.96.146:58087/

登录
docker login 192.168.96.146:58087
 

3. 上传镜像

打tag推送镜像到harbor  
docker tag detection_webserver:0.4.2 192.168.96.146:58087/detection/detection_webserver:0.4.2
docker push 192.168.96.146:58087/detection/detection_webserver:0.4.2
 

4. 拉取镜像

docker pull 192.168.96.146:58087/detection/detection_webserver:0.4.2
   

标签:harbor,192.168,58087,镜像,docker,96.146,搭建
From: https://www.cnblogs.com/Mr-shen/p/18245412

相关文章

  • 公司内部搭建OpenVPN服务(详细好用)
    OpenVPN构建应用OpenVPN是一个开源的应用程序,它允许您通过公共互联网创建一个安全的专用网络。OpenVPN实现一个虚拟专用网(VPN)来创建一个安全连接。OpenVPN使用OpenSSL库提供加密,它提供了几种身份验证机制,如基于证书的、预共享密钥和用户名/密码身份验证。在本教程中,我们将向......
  • 微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
    实验环境原理生成kube-vip静态pod配置清单exportVIP=192.168.215.200#我的vip是192.168.215.200exportINTERFACE=ens33#可以用ipa查看接口名称#kube-vip最新镜像为v0.8.0,但我装时无法成功,后来降到v0.7.2后安装成功了ctrimagepulldocker.io/plndr/kube-vip:v0......
  • 如何低成本、高效搭建线上3D艺术展?
    随着数字技术的日新月异,艺术展览领域正迎来一场革新。未来的艺术展览将不再是单一的线下体验,而是线上线下相互融合,其中,3D线上展览将成为线下展览的重要延伸与拓展,为广大观众提供更多元化的选择。对于艺术家和策展人而言,3D线上展览不仅是一个全新的作品展示平台,更是一个突破时......
  • 使用rpc和venom工具模拟隧道搭建
    环境Avps-外网(这里用电脑主机模拟)B双网卡主机-外网内网(这里用虚拟机搭建kali系统)C内网主机-内网(这里用虚拟机搭建centos系统)用到的工具rpc、venom全局代理工具:proxifier浏览器代理工具:switchomega步骤网卡配置B双网卡主机配置C内网主机配置2.服务......
  • 使用 PNPM 从 0 搭建 monorepo,测试并发布
    1目标通过PNPM创建一个monorepo(多个项目在一个代码仓库)项目,形成一个通用的仓库模板。这个仓库既可以用于公司存放和管理所有的项目,也可以用于将个人班余的所有积累整合其中。2环境要求核心是PNPM和Node.js,没有特殊的版本要求,只要他俩能对应上即可。除了以上......
  • 基于imx6ull_pro中qtcreator环境搭建
    目录(一)说明(二)qt_creator安装(三)qt_creator配置与环境搭建(四)qt_creator所遇问题(一)说明1使用版本Descriptionubuntu18.04.2LTSRelease......
  • 基于phpstudy的Pikachu靶场搭建(有手就会)
    目录一、phpstudy和pikachu源码下载地址二、phpstudy创建网站,网站根目录设置为pikachu的源码文件夹1、将pikachu_master(pikachu源码文件夹)放到phpstudy的WWW目录下2、打开phpstudy,创建pikachu靶场网站三、配置pikachu靶场四、用phpstudy的mysql连接pikachu靶场的数据库......
  • 网站搭建:网站域名介绍
    域名是网站唯一的名称。主机解决方案中应包括域名注册。域名应该容易记、容易写。什么是域名?域名是网站的唯一名称,比如csdn.net域名是需要注册的。当域名被注册后,就会被添加到大的域名注册商那里,连同与您的网站有关的信息-包括被保存在DNS服务器的IP信息。DNS指......
  • 网站搭建:网站主机提供商
    如果您希望让全世界的人都看到您的网站,就必须把它存储在一个web服务器。使用自己的主机在自己的服务器上存放网站始终都是一个选项。不过有些问题是需要考虑的:硬件的费用要运行一个"真正"的网站,你必须购买一些高性能的服务器硬件。不要指望低价的PC可以做这些工作。同......
  • Day26.管理员功能框架搭建
    1.管理员功能框架搭建 管理员功能框架搭建,src.py中的代码:#10.管理员功能@common.login_authdefadmin():fromATM.coreimportadminadmin.admim_run() 管理员功能框架搭建,admin.py中的代码:fromATM.coreimportsrc#添加账户defadd_user():......