硬件支持
CPU
:最低2核,推荐4核
内存
:最低4G,推荐8G
磁盘
:最低40G,推荐160G
软件支持
Docker
:Version17.06.0-ce以上
Docker Compose
:docker-compose(v1.18.0+) 或 docker compose v2(docker-compose-plugin)版本
安装Harbor
下载Harbor
wget https://github.com/goharbor/harbor/releases/download/v2.5.3/harbor-offline-installer-v2.5.3.tgz
解压压缩包
tar -zxvf harbor-offline-installer-v2.5.3.tgz
harbor/harbor.v2.5.3.tar.gz
harbor/prepare
harbor/LICENSE
harbor/install.sh
harbor/common.sh
harbor/harbor.yml.tmpl
进入harbor目录,复制harbor.yml.tmpl生产一个harbor.yml。
cd harbor
cp harbor.yml.tmpl harbor.yml
vim harbor.yml
修改配置,将域名修改成本机的域名或IP地址,将HTTPS部门注释掉,默认管理密码Harbor12345
# Configuration file of Harbor
# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: 192.168.170.111
# 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: /your/certificate/path
# private_key: /your/private/key/path
# # Uncomment following will enable tls communication between all harbor components
# internal_tls:
# # set enabled to true means internal tls is enabled
# enabled: true
# # put your cert and key files on dir
# dir: /etc/harbor/tls/internal
# Uncomment external_url if you want to enable external proxy
# And when it enabled the hostname will no longer used
# external_url: https://reg.mydomain.com:8433
# The initial password of Harbor admin
# It only works in first time to install harbor
# Remember Change the admin password from UI after launching Harbor.
harbor_admin_password: Harbor12345
保存配置退出后,返回上一层,将harbor整个目录移至/usr/local下。
mv harbor /usr/local/harbor/
进入harbor目录里,通过install脚本开始自动启动安装
cd /usr/local/harbor/
./install.sh
[Step 5]: starting Harbor ...
[+] Running 9/10
⠙ Network harbor_harbor Created 4.1s
✔ Container harbor-log Started 1.1s
✔ Container redis Started 1.7s
✔ Container registryctl Started 1.3s
✔ Container harbor-portal Started 1.2s
✔ Container harbor-db Started 1.7s
✔ Container registry Started 1.6s
✔ Container harbor-core Started 2.1s
✔ Container harbor-jobservice Started 2.8s
✔ Container nginx Started 2.8s
✔ ----Harbor has been installed and started successfully.----
浏览器访问harbor,默认密码Harbor12345
上传镜像到Harbor
和registry一样,上传方需要先修改daemon文件,我这里把registry和Harbor的地址都添加了
vim /etc/docker/daemon.json
{
"insecure-registries":["hub.monster.com:5000","hub.monster.com:80"]
}
重新加载配置,重启Docker生效
[root@ceshi ~]# systemctl daemon-reload
[root@ceshi ~]# systemctl restart docker
打标签
[root@ceshi ~]# docker tag hub.monster.com:5000/chatgpt:1.1 hub.monster.com:80/monster/chatgpt:0.1
上传镜像,注意直接上传会提示未认证,需要先通过Docker登录到我们的Harbor。
[root@ceshi ~]# docker push hub.monster.com:80/monster/chatgpt:0.1
The push refers to repository [hub.monster.com:80/monster/chatgpt]
29117c2678df: Preparing
82c0fd5deac1: Preparing
b47a34ba73cb: Preparing
07b965bc2aca: Preparing
a2c7e2a1b1ae: Preparing
63caa1dbfd24: Waiting
879b1e560390: Waiting
54e2f0467614: Waiting
a0bbbabe7b80: Waiting
78a822fe2a2d: Waiting
unauthorized: unauthorized to access repository: monster/chatgpt, action: push: unauthorized to access repository: monster/chatgpt, action: push
[root@ceshi ~]# docker login -u admin hub.monster.com:80
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded
[root@ceshi ~]# docker push hub.monster.com:80/monster/chatgpt:0.1
The push refers to repository [hub.monster.com:80/monster/chatgpt]
29117c2678df: Pushed
82c0fd5deac1: Pushed
b47a34ba73cb: Pushed
07b965bc2aca: Pushed
a2c7e2a1b1ae: Pushed
63caa1dbfd24: Pushed
879b1e560390: Pushed
54e2f0467614: Pushed
a0bbbabe7b80: Pushed
78a822fe2a2d: Pushed
0.1: digest: sha256:ece1b3edb2459e71cdfefaf28a04ef6719ad64f6e170f7ab69f4bd5a96b60089 size: 2420
[root@ceshi ~]#
评论区