DockerHub
1 下载最新离线安装包
https://github.com/goharbor/harbor/releases
2 解压下载的压缩包
[admin@controller-server software]$ tar zxf harbor-offline-installer-v2.3.4.tgz
[admin@controller-server software]$ cd harbor
[admin@controller-server harbor]$ ll
total 596284
-rw-r--r-- 1 admin admin 3361 Nov 9 19:01 common.sh
-rw-r--r-- 1 admin admin 610560420 Nov 9 19:01 harbor.v2.3.4.tar.gz
-rw-r--r-- 1 admin admin 7840 Nov 9 19:01 harbor.yml.tmpl
-rwxr-xr-x 1 admin admin 2500 Nov 9 19:01 install.sh
-rw-r--r-- 1 admin admin 11347 Nov 9 19:01 LICENSE
-rwxr-xr-x 1 admin admin 1881 Nov 9 19:01 prepare
#先检测安装环境
[admin@controller-server harbor]$ sudo ./prepare
复制一个harbor.yml文件
[admin@controller-server harbor]$ cp harbor.yml.tmpl harbor.yml
编辑harbor.yml文件
hostname: harbor.xxxooog.com //编辑域名
# http related config
http:
# port for http, default is 80. If https enabled, this port will redirect to https port
port: 80 // 如有冲突,改成自定义端口
# https related config
https:
# https port for harbor, default is 443
port: 443 // 如有冲突,改成自定义端口
# The path of cert and key files for nginx
certificate: /etc/nginx/keys/xxxooo.com.pem // 改成自己域名的证书
private_key: /etc/nginx/keys/xxxooo.com.key // 改成自己域名的证书
# Remember Change the admin password from UI after launching Harbor.
harbor_admin_password: Harbor12345 // 修改默认密码
# The default data volume
data_volume: /data/software/harbor/data // 设置data目录,写成相对目录好像有问题,写程绝对目录
#其他配置请自行修改
先检测安装环境
[admin@controller-server harbor]$ ./prepare
prepare base dir is set to /data/software/harbor
Generated configuration file: /config/portal/nginx.conf
Generated configuration file: /config/log/logrotate.conf
Generated configuration file: /config/log/rsyslog_docker.conf
Generated configuration file: /config/nginx/nginx.conf
Generated configuration file: /config/core/env
Generated configuration file: /config/core/app.conf
Generated configuration file: /config/registry/config.yml
Generated configuration file: /config/registryctl/env
Generated configuration file: /config/registryctl/config.yml
Generated configuration file: /config/db/env
Generated configuration file: /config/jobservice/env
Generated configuration file: /config/jobservice/config.yml
Generated and saved secret to file: /data/secret/keys/secretkey
Successfully called func: create_root_cert
Generated configuration file: /compose_location/docker-compose.yml
Clean up the input dir
安装harbor
[admin@controller-server harbor]$ sudo ./install.sh
[Step 0]: checking if docker is installed ...
Note: docker version: 19.03.13
[Step 1]: checking docker-compose is installed ...
Note: docker-compose version: 1.29.2
[Step 2]: loading Harbor images ...
Loaded image: goharbor/harbor-portal:v2.3.4
Loaded image: goharbor/nginx-photon:v2.3.4
Loaded image: goharbor/notary-server-photon:v2.3.4
Loaded image: goharbor/trivy-adapter-photon:v2.3.4
Loaded image: goharbor/harbor-core:v2.3.4
Loaded image: goharbor/harbor-db:v2.3.4
Loaded image: goharbor/harbor-jobservice:v2.3.4
Loaded image: goharbor/registry-photon:v2.3.4
Loaded image: goharbor/prepare:v2.3.4
Loaded image: goharbor/harbor-registryctl:v2.3.4
Loaded image: goharbor/harbor-exporter:v2.3.4
Loaded image: goharbor/notary-signer-photon:v2.3.4
Loaded image: goharbor/harbor-log:v2.3.4
Loaded image: goharbor/redis-photon:v2.3.4
Loaded image: goharbor/chartmuseum-photon:v2.3.4
[Step 3]: preparing environment ...
[Step 4]: preparing harbor configs ...
prepare base dir is set to /data/software/harbor
Clearing the configuration file: /config/portal/nginx.conf
Clearing the configuration file: /config/log/logrotate.conf
Clearing the configuration file: /config/log/rsyslog_docker.conf
Clearing the configuration file: /config/nginx/nginx.conf
Clearing the configuration file: /config/core/env
Clearing the configuration file: /config/core/app.conf
Clearing the configuration file: /config/registry/passwd
Clearing the configuration file: /config/registry/config.yml
Clearing the configuration file: /config/registryctl/env
Clearing the configuration file: /config/registryctl/config.yml
Clearing the configuration file: /config/db/env
Clearing the configuration file: /config/jobservice/env
Clearing the configuration file: /config/jobservice/config.yml
Generated configuration file: /config/portal/nginx.conf
Generated configuration file: /config/log/logrotate.conf
Generated configuration file: /config/log/rsyslog_docker.conf
Generated configuration file: /config/nginx/nginx.conf
Generated configuration file: /config/core/env
Generated configuration file: /config/core/app.conf
Generated configuration file: /config/registry/config.yml
Generated configuration file: /config/registryctl/env
Generated configuration file: /config/registryctl/config.yml
Generated configuration file: /config/db/env
Generated configuration file: /config/jobservice/env
Generated configuration file: /config/jobservice/config.yml
Generated and saved secret to file: /data/secret/keys/secretkey
Successfully called func: create_root_cert
Generated configuration file: /compose_location/docker-compose.yml
Clean up the input dir
[Step 5]: starting Harbor ...
Creating network "harbor_harbor" with the default driver
Creating harbor-log ... done
Creating harbor-portal ... done
Creating harbor-db ... done
Creating registry ... done
Creating redis ... done
Creating registryctl ... done
Creating harbor-core ... done
Creating harbor-jobservice ... done
Creating nginx ... done
✔ ----Harbor has been installed and started successfully.----
阿里云镜像仓库
私有仓库
docker run -d -p 5000:5000 --restart always --name registry -v /data/registry:/var/lib/registry registry:latest
docker tag registry:latest 192.168.136.131:5000/test
docker push 192.168.136.131:5000/test