Harbor私有镜像仓库部署

Tarik 2024年10月15日 85次浏览

>>>环境准备

#系统要求:Harbor 可以运行在 Linux 系统(例如 Ubuntu)或其他基于 Linux 的发行版上。
#Docker 和 Docker Compose:Harbor 依赖于 Docker 和 Docker Compose。你需要确保它们已经安装在你的机器上

#移除安装docker冲突的包
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

#设置docker的apt源
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

#安装docker
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# 下载 Docker Compose 二进制文件
sudo curl -L "https://github.com/docker/compose/releases/download/x.x.x/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose  #替换版本
# 授权可执行权限
sudo chmod +x /usr/local/bin/docker-compose

>>>下载并解压Harbor

wget https://github.com/goharbor/harbor/releases/download/v2.11.1/harbor-offline-installer-v2.11.1.tgz  #替换版本

tar xvf harbor-offline-installer-v2.11.1.tgz 
cd harbor

>>>配置Harbor

vi harbor.yml.tpl  #后续需要重命名成harbor.yml

#根据实际情况修改配置项,以下是部分配置
hostname: 192.168.1.100  # 你的服务器 IP 地址或域名
harbor_admin_password: Harbor12345  # 管理员登录密码

#设置https,如果不需要可以注释
https:
  port: 443
  certificate: /path/to/your/certificate.crt
  private_key: /path/to/your/private.key

>>>启动Harbor

./install.sh  #执行安装脚本

docker-compose ps   #查看容器是否正常

#随后可访问harbor:http://192.168.1.100

>>>使用 Harbor 推送和拉取镜像

docker login <你的Harbor地址>
#docker login 192.168.1.100

docker tag <本地镜像ID> <Harbor地址>/<项目名称>/<镜像名称>:<版本号>  #给本地镜像打tag
#docker tag my-image 192.168.1.100/library/my-image:1.0

docker push <Harbor地址>/<项目名称>/<镜像名称>:<版本号>  #推送镜像
#docker push 192.168.1.100/library/my-image:1.0

docker pull <Harbor地址>/<项目名称>/<镜像名称>:<版本号>    #拉去镜像