harbor部署和使用(笔记)

github:
https://github.com/goharbor/harbor

docker-compose安装:
1.下载最新版本

sudo curl -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2.配置可执行权限

sudo chmod +x /usr/local/bin/docker-compose

3.创建软链

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

4.检测是否成功安装

docker-compose --version

安装过程: 

[root@localhost soft]# sudo curl -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   633  100   633    0     0    161      0  0:00:03  0:00:03 --:--:--   161
100 11.6M  100 11.6M    0     0   239k      0  0:00:49  0:00:49 --:--:-- 2036k
[root@localhost soft]# 
[root@localhost soft]# sudo chmod +x /usr/local/bin/docker-compose
[root@localhost soft]# sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
[root@localhost soft]# docker-compose --version
docker-compose version 1.28.2, build 67630359

安装Harbor
1.github的releases下载最新安装包

harbor-offline-installer-v2.0.6.tgz

2.解压

tar -zxvf harbor-offline-installer-v2.0.6.tgz

3.配置yml

cd harbor
cp harbor.yml.tmpl harbor.yml
vi harbor.yml

修改配置:

# 内网ip地址
hostname: 192.168.40.129
# http related config
http:
  # 修改http端口, 官方生产环境建议使用https
  port: 8088

# 注释https
#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

# 这里是默认密码
harbor_admin_password: Harbor12345

4.执行安装:

./install.sh

安装过程:

[root@localhost harbor]# ./install.sh

[Step 0]: checking if docker is installed ...

Note: docker version: 20.10.3

[Step 1]: checking docker-compose is installed ...
✖ Need to install docker-compose(1.18.0+) by yourself first and run this script again.
[root@localhost harbor]# 
[root@localhost harbor]# 
[root@localhost harbor]# 
[root@localhost harbor]# ./install.sh

[Step 0]: checking if docker is installed ...

Note: docker version: 20.10.3

[Step 1]: checking docker-compose is installed ...

Note: docker-compose version: 1.28.2

[Step 2]: loading Harbor images ...

16c66899afe2: Loading layer [==================================================>]  34.51MB/34.51MB
140ffb3df060: Loading layer [==================================================>]  9.639MB/9.639MB
4b1e11724eb9: Loading layer [==================================================>]  6.318MB/6.318MB
6cbca54d9f4b: Loading layer [==================================================>]  16.04MB/16.04MB
dd58d81ad95a: Loading layer [==================================================>]  28.25MB/28.25MB
afd228b63447: Loading layer [==================================================>]  22.02kB/22.02kB
900592c06d79: Loading layer [==================================================>]  16.04MB/16.04MB
Loaded image: goharbor/notary-server-photon:v2.0.6
7242ca94a1c5: Loading layer [==================================================>]  116.5MB/116.5MB
70b2ef02091f: Loading layer [==================================================>]  12.63MB/12.63MB
56220c5e8642: Loading layer [==================================================>]  3.072kB/3.072kB
9c10fdc202a0: Loading layer [==================================================>]  49.15kB/49.15kB
2e6ba845f20b: Loading layer [==================================================>]  4.096kB/4.096kB
e10c55c004d9: Loading layer [==================================================>]   13.5MB/13.5MB
Loaded image: goharbor/clair-photon:v2.0.6
c048de2e27be: Loading layer [==================================================>]  9.645MB/9.645MB
facd900963ec: Loading layer [==================================================>]  4.096kB/4.096kB
b79026c5bd86: Loading layer [==================================================>]  3.072kB/3.072kB
84857f59f602: Loading layer [==================================================>]  13.28MB/13.28MB
6c8ac72362d1: Loading layer [==================================================>]   14.1MB/14.1MB
Loaded image: goharbor/clair-adapter-photon:v2.0.6
aa31f773c326: Loading layer [==================================================>]  11.49MB/11.49MB
cf10c2945c50: Loading layer [==================================================>]  8.494MB/8.494MB
93908b71a428: Loading layer [==================================================>]  178.7kB/178.7kB
0d73bea5837b: Loading layer [==================================================>]  157.2kB/157.2kB
74a6d0b95d3b: Loading layer [==================================================>]  33.28kB/33.28kB
ff79adc23c6a: Loading layer [==================================================>]  17.41kB/17.41kB
b317e6a84b08: Loading layer [==================================================>]  15.36kB/15.36kB
0de754b914e6: Loading layer [==================================================>]  3.584kB/3.584kB
Loaded image: goharbor/harbor-portal:v2.0.6
28eecfa451f6: Loading layer [==================================================>]  13.42MB/13.42MB
8470ab3f2651: Loading layer [==================================================>]  3.584kB/3.584kB
b35e9592dfee: Loading layer [==================================================>]   2.56kB/2.56kB
f1b6316833f6: Loading layer [==================================================>]  49.99MB/49.99MB
1905745a13cc: Loading layer [==================================================>]  5.632kB/5.632kB
f161b6a740c5: Loading layer [==================================================>]  54.27kB/54.27kB
1e4a60ef27ff: Loading layer [==================================================>]  50.81MB/50.81MB
a9908fbc2016: Loading layer [==================================================>]   2.56kB/2.56kB
Loaded image: goharbor/harbor-core:v2.0.6
6b0aa29bcac4: Loading layer [==================================================>]  63.62MB/63.62MB
3ce97e069d3c: Loading layer [==================================================>]  79.28MB/79.28MB
eefe2b287e13: Loading layer [==================================================>]  6.144kB/6.144kB
8e713632a10e: Loading layer [==================================================>]   2.56kB/2.56kB
a67aae4afd9c: Loading layer [==================================================>]   2.56kB/2.56kB
7af48c77c810: Loading layer [==================================================>]   2.56kB/2.56kB
1286105fa250: Loading layer [==================================================>]   2.56kB/2.56kB
7bdaad95aa83: Loading layer [==================================================>]  11.26kB/11.26kB
Loaded image: goharbor/harbor-db:v2.0.6
542990a9cd95: Loading layer [==================================================>]  13.42MB/13.42MB
48c661eefcb7: Loading layer [==================================================>]  3.584kB/3.584kB
d03c0da177e7: Loading layer [==================================================>]   2.56kB/2.56kB
710f9a50dfa6: Loading layer [==================================================>]  60.51MB/60.51MB
3f2921344f65: Loading layer [==================================================>]  61.33MB/61.33MB
Loaded image: goharbor/harbor-jobservice:v2.0.6
ac824f681ecb: Loading layer [==================================================>]  40.66MB/40.66MB
6dd89aa571f5: Loading layer [==================================================>]  3.072kB/3.072kB
1ab88978b7d6: Loading layer [==================================================>]   59.9kB/59.9kB
4d65adbf3d7c: Loading layer [==================================================>]  61.95kB/61.95kB
Loaded image: goharbor/redis-photon:v2.0.6
6380379a4dc8: Loading layer [==================================================>]  14.61MB/14.61MB
518f1820e075: Loading layer [==================================================>]  28.25MB/28.25MB
a9d0e3ba0b82: Loading layer [==================================================>]  22.02kB/22.02kB
202e7f272f44: Loading layer [==================================================>]  14.61MB/14.61MB
Loaded image: goharbor/notary-signer-photon:v2.0.6
12234460b034: Loading layer [==================================================>]  75.92MB/75.92MB
84e6e04bc0e0: Loading layer [==================================================>]  3.584kB/3.584kB
5693a3880a52: Loading layer [==================================================>]  3.072kB/3.072kB
518d38be3f6d: Loading layer [==================================================>]   2.56kB/2.56kB
ecec493b1270: Loading layer [==================================================>]  3.072kB/3.072kB
e63cd8780cbc: Loading layer [==================================================>]  3.584kB/3.584kB
3ab835f59a3f: Loading layer [==================================================>]  12.29kB/12.29kB
5b30848e51e0: Loading layer [==================================================>]  3.584kB/3.584kB
Loaded image: goharbor/harbor-log:v2.0.6
e1fc753918d0: Loading layer [==================================================>]  9.645MB/9.645MB
716efc76027e: Loading layer [==================================================>]  4.096kB/4.096kB
c21113e21386: Loading layer [==================================================>]  20.94MB/20.94MB
080e7f017989: Loading layer [==================================================>]  3.072kB/3.072kB
55dea557d4ef: Loading layer [==================================================>]  8.726MB/8.726MB
a64446c5d548: Loading layer [==================================================>]  30.49MB/30.49MB
Loaded image: goharbor/harbor-registryctl:v2.0.6
4a179e84af6f: Loading layer [==================================================>]  10.95MB/10.95MB
0b7414e7b16f: Loading layer [==================================================>]  4.096kB/4.096kB
ad62ef65d04f: Loading layer [==================================================>]  3.072kB/3.072kB
467190d5b504: Loading layer [==================================================>]  23.44MB/23.44MB
66d855ab3844: Loading layer [==================================================>]  13.25MB/13.25MB
3fefdaf8c5bf: Loading layer [==================================================>]  37.51MB/37.51MB
Loaded image: goharbor/trivy-adapter-photon:v2.0.6
a58d08c989ed: Loading layer [==================================================>]  9.644MB/9.644MB
68151298ffb2: Loading layer [==================================================>]  67.49MB/67.49MB
27df8635f227: Loading layer [==================================================>]  3.072kB/3.072kB
f47ddcf87e35: Loading layer [==================================================>]  4.096kB/4.096kB
e6ba620f60b8: Loading layer [==================================================>]  68.31MB/68.31MB
Loaded image: goharbor/chartmuseum-photon:v2.0.6
527eaa1c3534: Loading layer [==================================================>]  77.32MB/77.32MB
631d903c980c: Loading layer [==================================================>]  51.58MB/51.58MB
77ad9a89f0f9: Loading layer [==================================================>]   2.56kB/2.56kB
ab797dc18e3d: Loading layer [==================================================>]  1.536kB/1.536kB
047e09499da9: Loading layer [==================================================>]  18.43kB/18.43kB
1e239f0076e3: Loading layer [==================================================>]  4.055MB/4.055MB
c941cbaba1ae: Loading layer [==================================================>]  233.5kB/233.5kB
Loaded image: goharbor/prepare:v2.0.6
32157259d7b9: Loading layer [==================================================>]  11.49MB/11.49MB
Loaded image: goharbor/nginx-photon:v2.0.6
57d114d5785d: Loading layer [==================================================>]  9.645MB/9.645MB
690299ab67a4: Loading layer [==================================================>]  4.096kB/4.096kB
cc159c85e0e1: Loading layer [==================================================>]  3.072kB/3.072kB
47d60237e55f: Loading layer [==================================================>]  20.94MB/20.94MB
5902fa0ab0c1: Loading layer [==================================================>]  21.77MB/21.77MB
Loaded image: goharbor/registry-photon:v2.0.6


[Step 3]: preparing environment ...

[Step 4]: preparing harbor configs ...
prepare base dir is set to /home/soft/harbor
WARNING:root:WARNING: HTTP protocol is insecure. Harbor will deprecate http protocol in the future. Please make sure to upgrade to https
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 ...
Building with native build. Learn about native build in Compose here: https://docs.docker.com/go/compose-native-build/
Creating network "harbor_harbor" with the default driver
Creating harbor-log ... done
Creating redis         ... done
Creating registry      ... done
Creating harbor-db     ... done
Creating harbor-portal ... done
Creating registryctl   ... done
Creating harbor-core   ... done
Creating harbor-jobservice ... done
Creating nginx             ... done
✔ ----Harbor has been installed and started successfully.----
[root@localhost harbor]# 

 查看docker实例

[root@localhost harbor]# docker ps
CONTAINER ID   IMAGE                                COMMAND                  CREATED              STATUS                        PORTS                       NAMES
0dfb661f4358   goharbor/harbor-jobservice:v2.0.6    "/harbor/entrypoint.…"   About a minute ago   Up About a minute (healthy)                               harbor-jobservice
28fe6ea9b7a8   goharbor/nginx-photon:v2.0.6         "nginx -g 'daemon of…"   About a minute ago   Up About a minute (healthy)   0.0.0.0:8088->8080/tcp      nginx
fcff7ccd81cc   goharbor/harbor-core:v2.0.6          "/harbor/entrypoint.…"   About a minute ago   Up About a minute (healthy)                               harbor-core
e534dffb8d9d   goharbor/harbor-registryctl:v2.0.6   "/home/harbor/start.…"   About a minute ago   Up About a minute (healthy)                               registryctl
6a8f343a6ea9   goharbor/redis-photon:v2.0.6         "redis-server /etc/r…"   About a minute ago   Up About a minute (healthy)   6379/tcp                    redis
e6907c0f778b   goharbor/registry-photon:v2.0.6      "/home/harbor/entryp…"   About a minute ago   Up About a minute (healthy)   5000/tcp                    registry
d8da1747dee1   goharbor/harbor-portal:v2.0.6        "nginx -g 'daemon of…"   About a minute ago   Up About a minute (healthy)   8080/tcp                    harbor-portal
2c4e0ce2b7e4   goharbor/harbor-db:v2.0.6            "/docker-entrypoint.…"   About a minute ago   Up About a minute (healthy)   5432/tcp                    harbor-db
4481d6b24e92   goharbor/harbor-log:v2.0.6           "/bin/sh -c /usr/loc…"   About a minute ago   Up About a minute (healthy)   127.0.0.1:1514->10514/tcp   harbor-log

访问 http://192.168.40.129:8088/

 上传本地docker镜像到harbor

1.创建项目

2.docker登陆harbor

docker login ip:port

登录Harbor仓库报错处理:

docker login登录Harbor仓库报错
1.查看状态
systemctl status docker
2.修改里面的这个文件
vi /usr/lib/systemd/system/docker.service
# 加这个参数 --insecure-registry 192.168.40.129:8088
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.40.129:8088
3.生效修改配置
systemctl daemon-reload
4.停止harbor
docker-compose stop
5.重启docker
systemctl restart docker
6.可能处理harbor启动失败的情况,请使用docker-compose操作重启harbor
停止harbor
docker-compose stop
启动
docker-compose up -d

尝试登陆

docker login -uadmin -pHarbor12345 192.168.40.129:8088

登陆ok

3.docker镜像打标

docker tag act-demo:1.0.0 192.168.40.129/myharbor/act-demo:1.0.1

3.将本地镜像push到harbor

hello-world测试
1.打标 docker tag {镜像名}:{tag} {Harbor地址}:{端口}/{Harbor项目名}/{自定义镜像名}:{自定义tag}
docker tag hello-world 192.168.40.129:8088/myharbor/hello-world:1.0.0
2.push到harbor
docker push 192.168.40.129:8088/myharbor/hello-world:1.0.0

act-demo测试
1.打标 docker tag {镜像名}:{tag} {Harbor地址}:{端口}/{Harbor项目名}/{自定义镜像名}:{自定义tag}
docker tag act-demo:1.0.0 192.168.40.129:8088/myharbor/act-demo:1.0.1
2.push到harbor
docker push 192.168.40.129:8088/myharbor/act-demo:1.0.1

4.pull私有库harbor镜像到本地

# 另外一台机子docker上执行
docker pull 192.168.40.129:8088/myharbor/act-demo:1.0.1

测试一下
docker run --add-host=mysqldb:192.168.1.102 --privileged -d -p 8080:8888 -v /home/oa/files:/qmy/oa/files -v /home/oa/logs:/logs -e JAVA_OPTS='-Xms256m -Xmx256m -XX:+HeapDumpOnOutOfMemoryError' --name act-demo-ltx-harbor 192.168.40.129:8088/myharbor/act-demo:1.0.1

[root@localhost harbor]# docker ps 
CONTAINER ID   IMAGE                                         COMMAND                  CREATED         STATUS                    PORTS                       NAMES
23831fb8ac01   192.168.40.129:8088/myharbor/act-demo:1.0.1   "nohup java -Djava.s…"   3 minutes ago   Up 3 minutes              0.0.0.0:8080->8888/tcp      act-demo-ltx-harbor

ok,写完收工!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小绿豆

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值