1. 安装 Docker 和 Docker Compose
Ubuntu 默认源中的 Docker 版本可能较旧,推荐使用官方源安装
# 1. 更新系统并安装依赖
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg lsb-release
# 2. 添加 Docker 的官方 GPG 密钥和软件源
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 3. 安装 Docker 引擎和 Docker Compose 插件 (V2)
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
# 4. 启动 Docker 并设置开机自启
sudo systemctl enable docker && sudo systemctl start docker
# 5. 验证安装
docker --version
docker compose version
2. 下载并配置 Harbor
建议下载离线安装包,可以避免网络问题,且适用于内网环境
# 1. 下载最新稳定版离线包 (前往 https://github.com/goharbor/harbor/releases 查看最新版本号)
wget https://github.com/goharbor/harbor/releases/download/v2.15.2/harbor-offline-installer-v2.15.2.tgz
# 2. 解压
tar zxvf harbor-offline-installer-v2.15.2.tgz
cd harbor
# 3. 复制配置文件模板
cp harbor.yml.tmpl harbor.yml
# 4. 编辑配置文件
vim harbor.yml
关键配置项:
hostname: 填写你服务器的 IP 地址或域名,不能使用localhost或127.0.0.1。http: 默认端口为 80,可按需修改。https: 测试环境可暂时注释掉;生产环境必须开启并配置证书。harbor_admin_password: 修改默认管理员密码Harbor12345。data_volume: 数据存储目录,默认是/data,请确保该分区有足够空间。
3. 运行安装脚本
# 执行安装 (如需更多功能,可添加 --with-trivy 等参数)
sudo ./install.sh[reference:20]
当看到 "Harbor has been installed and started successfully." 的提示时,即表示安装成功。
4. 验证与访问
- Web 界面: 在浏览器访问
http://你的服务器IP,使用admin和你设置的密码登录。 - 命令行登录:
docker login 你的服务器IP。 - 查看容器状态:
docker compose ps,确保所有容器状态均为Up。启动命令
如页面无法访问,先进行Harbor启动
cd harbor
docker compose up -d
使用 Harbor 内置的“复制”功能 (Replication) ,从其他仓库复制镜像
登录新 Harbor 的 Web 界面,进入 “系统管理” -> “仓库管理”。
新建目标:
提供商:选择 Harbor。
URL:填写旧 Harbor 的地址,例如 https://旧Harbor的IP或域名。
访问ID/密码:填写有权限读取旧 Harbor 镜像的用户名和密码。
如果旧 Harbor 使用自签名证书,请取消勾选 “验证远程证书”。点击 “测试连接”,成功后保存。
创建复制规则:
进入 “系统管理” -> “复制管理”,点击 “新建规则”。
名称:自定义。
源仓库:选择刚刚创建的旧 Harbor 目标。
目标仓库:选择当前新 Harbor 实例。
触发模式:根据需要选择 “手动”、“定时” 或 “事件驱动”。
资源过滤器:可以选择同步全部镜像,或指定具体的项目(Project)和镜像。
执行同步:规则创建后,点击 “复制” 即可手动开始同步。