【docker】harbor容器化部署方案
Harbor 环境准备:
在能联网的机器上下载:
mkdir -p /opt/harbor-package
cd /opt/harbor-package
wget https://github.com/goharbor/harbor/releases/download/v2.15.0/harbor-offline-installer-v2.15.0.tgz
如果你的服务器能访问 GitHub,也可以直接在服务器上执行。
解压:
tar -zxvf harbor-offline-installer-v2.15.0.tgz -C /opt/
cd /opt/harbor
目录大概是:
/opt/harbor/
├── harbor.yml.tmpl
├── install.sh
├── prepare
├── common.sh
└── harbor.v2.15.0.tar.gz
3. 配置 harbor.yml 复制模板:
cd /opt/harbor
cp harbor.yml.tmpl harbor.yml
编辑 harbor.yml:
hostname: 192.168.1.3
http:
port: 80
# https:
# port: 443
# certificate: /your/certificate/path
# private_key: /your/private/key/path
harbor_admin_password: root123
database:
password: root123
data_volume: /data/harbor
log:
level: info
local:
location: /var/log/harbor
如果你不想占用 80 端口,也可以改成:
http:
port: 8080
那访问地址就是:
http://192.168.1.3:8080
执行安装:
cd /opt/harbor
./install.sh
安装完成后查看容器 docker compose ps:
harbor-core
harbor-db
harbor-jobservice
harbor-log
harbor-nginx
harbor-portal
registry
redis
如图:

2. 开始安装harbor:修改完配置文件后,在的当前目录执行:
./install.sh
harbor服务就会根据当期目录下的 docker-compose.yml 开始下载依赖的镜像,检测并按照顺序依次启动各个服务。
3. 安装完成查看状态:
docker-compose ps
输出:

4.harbor的停止与启动
cd harbor
docker-compose down #停止
docker-compose up -d #启动
5.访问harbor首页:访问刚设置的 hostname 即可,默认是80端口,如果端口占用,可以去修改docker-compose.yml文件中,对应服务的端口映射。

登录密码:admin , 登录密码:Harbor12345。

如果 Harbor 是 HTTP,不是 HTTPS,那么所有要 docker login / docker push / docker pull 的客户端机器都要配置 Docker 的 insecure-registries。Harbor 官方文档明确说明,HTTP 部署时必须在 Docker daemon 里添加 --insecure-registry 或 daemon.json 配置,然后重启 Docker。
在客户端机器上,比如 stor01:
mkdir -p /etc/docker
cat > /etc/docker/daemon.json <<'EOF'
{
"insecure-registries": ["192.168.1.3"]
}
EOF
systemctl daemon-reload
systemctl restart docker
如果 Harbor 用的是 8080 端口:
{
"insecure-registries": ["192.168.1.3:8080"]
}
然后测试登录:
docker login 192.168.1.3
输入:
Username: admin
Password: Harbor12345
推送镜像测试:
docker images
比如:
nginx:latest
先在 Harbor Web 页面创建一个项目,例如:
library
然后打tag:
docker tag nginx:latest 192.168.1.3/library/nginx:latest
推送:
docker push 192.168.1.3/library/nginx:latest
拉取测试:
docker pull 192.168.1.3/library/nginx:latest
如果你 Harbor 是 8080:
docker login 192.168.1.3:8080
docker tag nginx:latest 192.168.1.3:8080/library/nginx:latest
docker push 192.168.1.3:8080/library/nginx:latest

浙公网安备 33010602011771号