docker客户端访问harbor及安装配置更新

 更新时间:2023年12月07日 08:58:56   作者:sswhsz  
这篇文章主要介绍了docker客户端访问harbor以及harbor的安装配置更新步骤详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

版本选择和安装包下载

harbor的版本选择:
https://github.com/goharbor/harbor/releases/tag/v2.5.3

下载离线安装包选择:harbor-offline-installer-v2.5.3.tgz

离线安装包和在线安装包的唯一差别是包含了harbor需要的 所有镜像(一共15个)

[root@myserver ~]# docker images | grep harbor
goharbor/harbor-exporter                             v2.5.3               d9a8cfa37cf8   17 months ago   87.2MB
goharbor/chartmuseum-photon                          v2.5.3               788b207156ad   17 months ago   225MB
goharbor/redis-photon                                v2.5.3               5dc5331f3de8   17 months ago   154MB
goharbor/trivy-adapter-photon                        v2.5.3               27798821348a   17 months ago   251MB
goharbor/notary-server-photon                        v2.5.3               c686413b72ce   17 months ago   112MB
goharbor/notary-signer-photon                        v2.5.3               a3bc1def3f94   17 months ago   109MB
goharbor/harbor-registryctl                          v2.5.3               942de6829d43   17 months ago   136MB
goharbor/registry-photon                             v2.5.3               fb1278854b91   17 months ago   77.9MB
goharbor/nginx-photon                                v2.5.3               91877cbc147a   17 months ago   44.3MB
goharbor/harbor-log                                  v2.5.3               ca36fb3b68a6   17 months ago   161MB
goharbor/harbor-jobservice                           v2.5.3               75e6a7496590   17 months ago   227MB
goharbor/harbor-core                                 v2.5.3               93a775677473   17 months ago   203MB
goharbor/harbor-portal                               v2.5.3               d78f9bbad9ee   17 months ago   52.6MB
goharbor/harbor-db                                   v2.5.3               bd50ae1eccdf   17 months ago   224MB
goharbor/prepare                                     v2.5.3               15102b9ebde6   17 months ago   166MB
[root@myserver ~]#

解压安装包

在linux安装目录下,解压缩安装包:

tar xvf harbor-offline-installer-v2.5.3.tgz

安装离线镜像

执行命令:docker load < harbor.v2.5.3.tar.gz

修改配置

将harbor.yml.tmpl文件复制为 harbor.yml

修改几个重要的配置:

# 配置认证服务地址,认证服务在docker客户端首次访问时,由harbor返回给docker客户端使用。
external_url: http://myserver.com
# 这个属性也用来确定认证服务地址,如果已配置external_url属性,则这个属性被忽略;否则认证地址为:http://hostname:port
# 如果已配置external_url属性,那么这里如果配置了ip地址、并且harbor的主机ip已变化,也无须处理。
# 否则需要重新执行 ./prepare来处理harbor主机ip的变化
hostname: myserver
# 我们这里仅使用http协议
http:
  # 这里的端口有两个作用,1、为harbor前端代理nginx的服务端口,也即整个服务的对外端口。
  # 作用2:如果没有配置external_url属性,那么harbor认证服务地址由 hostname+此处的port两个属性决定。
  # 这就意味着,如果外网映射域名后的端口(比如80)和harbor内网端口(比如9000)不一致的话,必须借助external_url来配置。 
  port: 9000
# 暂时注释掉https相关内容
#https:
  #port: 443
  #certificate: /your/certificate/path
  #private_key: /your/private/key/path
# 指定harbor的admin密码,当harbor初次启动后,harbor的admin密码被加密存储到postgre数据库中,后续修改此处的密码是无效的。
# 要修改admin密码,除了通过控制台修改以外,修改配置文件需要下面步骤:
# 修改docker-compose文件中:postgresql服务的端口导出:如ports: -5432:5432(5432是harbor postgresql的缺省端口)
# 使用任意客户端工具连接postgresql数据库,数据库缺省密码为 postgres / root123,数据库:registry
# 更新密码:update harbor_user set password='',salt='' where username='admin'
# 然后重新执行 ./prepare,再启动即可:docker-compose up -d
harbor_admin_password: 123456
# 指定数据存储路径
data_volume: /home/apps/harbor/data
log:
  local:
    # 日志存储路径
    location: /home/apps/harbor/log

生成harbor各服务的配置文件

执行命令 ./prepare

启动harbor

执行命令 docker-compose up -d 或者 ./install.sh也一样。

install.sh脚本包含了:docker load、./prepare、docker-compose up -d3个命令。

docker客户端访问

因为我们没有为harbor配置 https 相关证书内容。所以需要为 docker客户端配置 “非安全的仓库地址”。 找到/etc/daemon.json文件,添加以下内容:

{
    "registry-mirrors": [
        "https://hub-mirror.c.163.com"
    ],
    "insecure-registries": [
        "10.1.27.89:9000"
    ]
}

特别注意:

  • json文件中的 逗号,不要多也不要少
  • /etc/daemon.json文件的换行符应该为 linux环境的“\n”,而不是windows环境的“\r\n”

修改完daemon.json配置后,客户端需要重启docker:

systemctl daemon-reload
systemctl restart docker

问题1 - harbor主机ip变化

如果harbor的认证服务地址我们是通过 external_url 配置的,那么harbor主机ip地址变化时,无须对harbor配置进行调整。
否则,如果hostname配置的是 域名,那么也无须对harbor配置进行调整。
否则,如果hostname配置的是内网ip,那么就需要更改harbor配置中的hostname属性。
然后执行下面命令:

docker-compose down
./prepare
docker-compose up -d

客户端如果时通过内网ip来访问 harbor的话,也需要同时修改 daemon.json文件配置,并重启docker

问题2 - 重置harbor的admin密码

harbor的admin密码存储在 postgresql数据库中。如果忘记密码的话,可以使用SQL客户端连接postgre数据库,删除admin密码即可。

具体步骤:

  • 修改docker-compose文件中:postgresql服务的端口导出:如ports: -5432:5432(5432是harbor postgresql的缺省端口)
  • 使用任意客户端工具连接postgresql数据库,数据库缺省密码为 postgres / root123,数据库:registry
  • 更新密码:update harbor_user set password='',salt='' where username='admin'
  • 然后停止harbor服务:docker-compose down
  • 重新生成配置文件 ./prepare
  • 重启harbor:docker-compose up -d

以上就是docker客户端访问harbor及安装配置更新的详细内容,更多关于docker访问harbor安装配置的资料请关注脚本之家其它相关文章!

相关文章

  • Docker查看镜像的Dockerfile(docker history和docker inspect命令)

    Docker查看镜像的Dockerfile(docker history和docker inspec

    这篇文章主要给大家介绍了关于Docker查看镜像的Dockerfile的相关资料,文中主要运用的是docker history和docker inspect命令,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-05-05
  • docker容器的文件拷贝方式小结

    docker容器的文件拷贝方式小结

    这篇文章主要给大家介绍了关于docker容器的文件拷贝方式,在使用Docker时,我们经常需要拷贝多个容器的文件系统,文中给出了详细的解决办法,需要的朋友可以参考下
    2023-08-08
  • MAC下安装docker教程

    MAC下安装docker教程

    Docker是当下十分火的一项技术,Docker使用了Linux-specific内核特定,所以在Mac OS X无法直接本地运行。但是可以通过安装Boot2Docker application实现。Boot2Docker包含了Virtual Box VM,Docker和Boot2Docker管理工具。
    2016-02-02
  • 使用Dockerfile脚本定制镜像的方法

    使用Dockerfile脚本定制镜像的方法

    Dockerfile 是⼀个⽂本⽂件,其内包含了⼀条条的指令(Instruction),每⼀条指令构建⼀层,因此每⼀条指令的内容,就是描述该层应当如何构建,这篇文章主要介绍了使用Dockerfile脚本定制镜像,需要的朋友可以参考下
    2022-07-07
  • Docker数据持久化之如何让新容器同步旧数据详解

    Docker数据持久化之如何让新容器同步旧数据详解

    这篇文章主要为大家详细介绍了Docker如何让新容器同步旧数据,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以参考一下
    2025-10-10
  • Docker中关于Namespace隔离机制全面解析

    Docker中关于Namespace隔离机制全面解析

    为了更好地理解容器的运行原理,本篇文章将会以 Linux 宿主机为例,介绍容器的底层技术,包括容器的命名空间、控制组、联合文件系统等,需要的朋友可以参考下
    2022-06-06
  • Docker本地镜像的导出导入两种方案介绍

    Docker本地镜像的导出导入两种方案介绍

    这篇文章主要介绍了Docker本地镜像的导出导入两种方案的相关资料,两种方法分别是export/import和save/load两种方案,文中并对比了它们的差别和应用场景,需要的朋友可以参考下
    2025-03-03
  • Docker Swarm 服务编排之命令详解

    Docker Swarm 服务编排之命令详解

    在Docker Swarm集群中,使用stack服务编排搭建lnmp来部署WordPress非常的方便,今天小编重点给大家介绍Docker Swarm 服务编排之命令详解,感兴趣的朋友跟随小编一起看看吧
    2021-05-05
  • Docker 部署 Elasticsearch 9 的搭建过程

    Docker 部署 Elasticsearch 9 的搭建过程

    本文详解Elasticsearch 9.x在Linux上通过Docker部署流程,涵盖新特性如Lucene10优化、BBQ提升向量搜索、EDOT支持多云监控等,并指导配置安全认证与访问权限,感兴趣的朋友跟随小编一起看看吧
    2025-06-06
  • Docker Registry搭建与使用详解

    Docker Registry搭建与使用详解

    这篇文章主要介绍了Docker Registry搭建与使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-05-05

最新评论