如何维护好公司的Harbor服务,看完这篇小白也会维护Harbor了!

网友投稿 278 2022-10-07

如何维护好公司的Harbor服务,看完这篇小白也会维护Harbor了!

场景

公司的Harbor服务器突然出现故障,服务异常!负责维护的人跟女朋友去酒店开房了,无法联系。

值班的人员对Harbor也不熟悉。那么,如何防止这种情况的发生呢?

本篇文章总结Harbor常用的管理操作,就算小白不知道对Harbor不熟,也可以完成一些基础的管理操作。

1、连接到Harbor服务器的主机

虽然Harbor提供丰富的安装方式,但在企业的业务场景中,使用较多的还是【离线安装】的,即在某台物理主机(服务器)上部署Harbor服务。

本文也主要分享这种部署方式的维护。

要想维护,首先得知道Harbor服务器的IP地址,以及连接这台主机的用户名和密码。

2、找到Harbor服务的服务目录

Harbor服务是使用docker-compose的方式启动的容器,需要进入到Harbor的部署的目录里面。

查询Harbor部署目录在哪?

[root@Over ~]# sudo find / -name harbor.yml -type f/app/harbor/harbor.yml

根据harbor的配置文件来查找harbor的部署目录。再cd进入到该目录里面。

[root@Over ~]# cd /app/harbor[root@Over harbor]# lscommon data harbor.yml install.sh manifest.json muli.com.crt muli.com.key repositoriescommon.sh docker-compose.yml harbor.yml.tmpl LICENSE metrics.txt muli.com.csr prepare

3、查看Harbor服务状态

[root@Over harbor]# docker-compose ps Name Command State Ports -------------------------------------------------------------------------------------------------------------------------------------------chartmuseum ./docker-entrypoint.sh Up (healthy) harbor-core /harbor/entrypoint.sh Up (healthy) harbor-db /docker-entrypoint.sh 96 13 Up (healthy) harbor-exporter /harbor/entrypoint.sh Up harbor-jobservice /harbor/entrypoint.sh Up (healthy) harbor-log /bin/sh -c /usr/local/bin/ ... Up (healthy) 127.0.0.1:1514->10514/tcp harbor-portal nginx -g daemon off; Up (healthy) nginx nginx -g daemon off; Up (healthy) 0.0.0.0:4443->4443/tcp, 0.0.0.0:80->8080/tcp, 0.0.0.0:443->8443/tcp, 0.0.0.0:9090->9090/tcp notary-server /bin/sh -c migrate-patch - ... Up notary-signer /bin/sh -c migrate-patch - ... Up redis redis-server /etc/redis.conf Up (healthy) registry /home/harbor/entrypoint.sh Up (healthy) registryctl /home/harbor/start.sh Up (healthy) trivy-adapter /home/scanner/entrypoint.sh Up (healthy)

Name列:Harbor中每个组件的名称;

Command列:启动组件的命令和参数;

State列:组件的服务状态,up表示正常,也主要是看该列。这里有问题就表示某个组件异常了。

4、如何将镜像上传到Harbor上?

找台跟Harbor服务器能通的主机(或者Harbor主机亦可);主机安装有docker服务;docker配置文件中指定harbor服务器地址;docker login 登录harbor服务器;将镜像通过docker load  -i 上传到本地;将镜像重新打tag为:harbor地址:端口/项目名称/镜像名称:镜像标签  的格式docker push 推送刚tag好的镜像到Harbor中;

4.1 docker配置文件中添加harbor服务器信息

[root@Over harbor]# vim /etc/docker/daemon.json { "exec-opts": ["native.cgroupdriver=systemd"], "registry-mirrors": [" "insecure-registries": ["192.168.2.250:443"]}

添加insecure-registries这一行,[]的内容为Harbor的地址和服务端口。

注意该行的前面一行的末尾处要有逗号。

4.2 重新加载docker服务的配置并重启docker服务

[root@Over harbor]# systemctl daemon-reload [root@Over harbor]# systemctl restart docker

4.3  命令行登录Harbor

[root@Over harbor]# docker login 192.168.2.250:443Authenticating with existing credentials...WARNING! Your password will be stored unencrypted in /root/.docker/config.json.Configure a credential helper to remove this warning. SeeSucceeded

4.4 导入镜像包到本地

将封装好的镜像包到本地,本处以nginx.tar.gz为例。

[root@Over harbor]# docker load -i tomcat.tar.gz[root@Over harbor]# docker ps //查看本地的镜像tomcat 8.5.34-jre8-alpine 4ac473a3dd92 3 years ago 108MB

4.5 给镜像打Tag

将刚才导入到本地主机的tomcat镜像tag成lidabai项目(Project)中,tag就需要打为:

# docker tag tomcat:8.5.34-jre8-alpine 192.168.2.250:443/lidabai/tomcat:8.5.34-jre8-alpine

如果要上传到哪个项目中,就需要将lidabai改成对应的项目名称(前提是Harbor中已经存在该项目)

4.6 将Tag好的镜像Push到Harbor中

docker push 192.168.2.250:443/lidabai/tomcat:8.5.34-jre8-alpine

镜像上传完成!

5、重启Harbor服务器

先停止Harbor服务器

[root@Over harbor]# docker-compose down

启动Harbor服务器

[root@Over harbor]# docker-compose up -d

然后再检查Harbor服务状态

[root@Over harbor]# docker-compose ps

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java创建线程池为什么一定要用ThreadPoolExecutor
下一篇:银杏谷创始人陈向明博士谈云原生的投资策略与思考 | 云原生加速器观点
相关文章

 发表评论

暂时没有评论,来抢沙发吧~