当前位置: 首页 > article >正文

搭建Docker Harbor仓库

搭建 Docker Harbor 仓库是一个常见的任务,Harbor 是一个企业级的 Docker Registry 管理工具,提供了镜像管理、用户权限控制、镜像扫描等功能。下面是搭建 Harbor 仓库的详细步骤。


1. 环境准备

在开始之前,确保你的服务器满足以下要求:

  • 操作系统:Linux(推荐 Ubuntu 或 CentOS)
  • Docker 已安装(版本 >= 17.06)
  • Docker Compose 已安装(版本 >= 1.18.0)
  • 至少 2 核 CPU 和 4GB 内存
  • 有足够的磁盘空间(建议 50GB 以上)
安装 Docker 和 Docker Compose

如果你还没有安装 Docker 和 Docker Compose,可以按照以下步骤安装:

安装 Docker
# 更新包管理器
sudo apt-get update

# 安装 Docker
sudo apt-get install -y docker.io

# 启动 Docker 服务
sudo systemctl start docker
sudo systemctl enable docker
安装 Docker Compose
# 下载 Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

# 赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose

# 验证安装
docker-compose --version

2. 下载 Harbor 安装包

Harbor 提供了离线安装包和在线安装包,推荐使用离线安装包以避免网络问题。

下载 Harbor 安装包
# 下载最新版本的 Harbor 离线安装包
wget https://github.com/goharbor/harbor/releases/download/v2.7.0/harbor-offline-installer-v2.7.0.tgz

# 解压安装包
tar -zxvf harbor-offline-installer-v2.7.0.tgz

解压后会得到一个 harbor 目录。


3. 配置 Harbor

进入 harbor 目录,编辑配置文件 harbor.yml

修改 harbor.yml 配置
cd harbor
cp harbor.yml.tmpl harbor.yml
nano harbor.yml

主要修改以下几项:

  • hostname: 设置为你的服务器 IP 或域名(例如 192.168.1.100harbor.example.com)。
  • https(可选): 如果你需要启用 HTTPS,配置证书路径。
  • ** harbor_admin_password**: 设置管理员密码。
  • data_volume: 设置数据存储路径(默认是 /data)。
示例配置
hostname: 192.168.1.100
http:
  port: 80
# https:
#   port: 443
#   certificate: /path/to/your/cert.pem
#   private_key: /path/to/your/key.pem
harbor_admin_password: "Harbor12345"
data_volume: /data

4. 安装 Harbor

harbor 目录下,运行安装脚本。

sudo ./install.sh

安装过程会启动多个 Docker 容器,包括 Harbor 的核心服务。


5. 访问 Harbor

安装完成后,你可以通过浏览器访问 Harbor 的管理界面。

访问地址
  • HTTP: http://<hostname>(例如 http://192.168.1.100
  • HTTPS(如果配置了 HTTPS): https://<hostname>
登录
  • 用户名: admin
  • 密码: 你在 harbor.yml 中设置的密码(例如 Harbor12345

6. 使用 Harbor

推送镜像到 Harbor
  1. 登录到 Harbor:

    docker login <hostname>
    

    输入用户名和密码。

  2. 标记本地镜像:

    docker tag <image_name> <hostname>/<project_name>/<image_name>:<tag>
    

    例如:

    docker tag nginx 192.168.1.100/library/nginx:1.0
    
  3. 推送镜像:

    docker push 192.168.1.100/library/nginx:1.0
    
拉取镜像
docker pull 192.168.1.100/library/nginx:1.0

7. 常见问题

1. 无法访问 Harbor 界面
  • 检查防火墙是否开放了 80 或 443 端口。
  • 确保 hostname 配置正确。
2. 推送镜像失败
  • 检查 Docker 是否已登录到 Harbor。
  • 确保项目(如 library)已创建。
3. HTTPS 配置问题
  • 确保证书路径正确,并且证书文件权限可读。

8. 升级 Harbor

如果你需要升级 Harbor,可以下载新版本的安装包,解压后覆盖旧的 harbor.yml,然后运行升级脚本:

sudo ./install.sh --with-trivy --with-chartmuseum

http://www.kler.cn/a/450235.html

相关文章:

  • vue中proxy代理配置(测试二)
  • 使用TC命令模拟弱网丢包
  • Linux系统安装部署xtrabackup
  • JAVA开发入门学习七- 数组
  • 使用idea创建JDK8的SpringBoot项目
  • java如何使用poi-tl在word模板里渲染多张图片
  • Qt5 cmake引用private头文件
  • scrapy 融合selenium
  • web的五个Observer API
  • 过滤掉list中两个连续的元素
  • C# 文件系统I/O操作--什么是I/O
  • day14-补充静态网卡配置
  • git 提交代码无法连接:Failed to connect to github.com port 443 after 21060 ms
  • 数据结构:双向循坏链表
  • 一文搞懂MYSQL、SQL、SQLServer、SQLyog的区别和联系
  • 英语四六级备考必备:2015-2024年历年真题+解析全汇总
  • 最新高性能多目标优化算法:多目标麋鹿优化算法(MOEHO)求解LRMOP1-LRMOP6及工程应用---盘式制动器设计,提供完整MATLAB代码
  • 最新高性能多目标优化算法:多目标麋鹿优化算法(MOEHO)求解GLSMOP1-GLSMOP9及工程应用---盘式制动器设计,提供完整MATLAB代码
  • 利用代码程序计算数学函数的泰勒展开式(MATLAB推导函数泰勒展开式+Python推导函数泰勒展开式)
  • springboot/ssm个人博客系统Java代码编写web在线博客相册管理项目
  • 垂起固定翼无人机大面积森林草原巡检技术详解
  • 详解MySQL中 MVCC
  • 【C语言】指针数组、数组指针、函数指针、指针函数、函数指针数组、回调函数
  • vscode 识别git目录
  • 探索大语言模型的世界:入门指南
  • vue中proxy代理配置(测试一)