Harbor:修改默认的172网段

简介: Harbor:修改默认的172网段

背景: harbor 默认启动会随机创建 172 网段的ip地址,跟集群规划的网段冲突

Harbor 网段修改步骤

0. 原来Harbor占用的网段

# 网桥名:harbor_harbor
[root@gpunode2 test]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
da8684ecc4b6        harbor_harbor       bridge              local
# 查看路由表
[root@gpunode2 test]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.21.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-da8684ecc4b6
# 查看网桥内部信息
docker inspect da8684ecc4b6
# 确认到Harbor占用的网段是172.21.0.0,和公司规划冲突

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B4zFPkVD-1657849708271)(https://cdn.jsdelivr.net/gh/Fly0905/note-picture@main/imag/202207141603387.png)]

1、停止harbor

#停止harbor
docker-compose -f /opt/harbor/docker-compose.yml down
[root@gpunode2 harbor]# docker-compose -f /opt/harbor/docker-compose.yml down
Stopping harbor-jobservice ... done
Stopping nginx             ... done
Stopping harbor-core       ... done
Stopping harbor-db         ... done
Stopping registry          ... done
Stopping registryctl       ... done
Stopping redis             ... done
Stopping harbor-portal     ... done
Stopping harbor-log        ... done
Removing harbor-jobservice ... done
Removing nginx             ... done
Removing harbor-core       ... done
Removing harbor-db         ... done
Removing registry          ... done
Removing registryctl       ... done
Removing redis             ... done
Removing harbor-portal     ... done
Removing harbor-log        ... done
Removing network harbor_harbor
# 查看网桥,确认harbor_harbor是否已经删掉
docker network ls
# 如果没有,使用以下命令删除网桥
# docker network remove [NETWORK ID]

2、创建Harbor新的网桥

# 创建Harbor新的网桥
docker network create --driver=bridge --subnet=172.252.0.1/16 harbor
# 验证网桥信息
[root@gpunode2 harbor]# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
e0a7e55534db        harbor              bridge              local
[root@gpunode2 harbor]# route -n | grep e0a7e55534db
172.252.0.0     0.0.0.0         255.255.0.0     U     0      0        0 br-e0a7e55534db

3、修改compose配置

# 2. 修改docker-compose.yml  把最下面network false 改成true
networks:
  harbor:
    external: true

4、重新启动

# 重新启动   
docker-compose -f /opt/harbor/docker-compose.yml up  -d --force-recreate

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3fOraodQ-1657849708272)(https://cdn.jsdelivr.net/gh/Fly0905/note-picture@main/imag/202207141659623.png)]

注意

1. 启动方式

这种方式重启后,会使用新的网桥

但是使用.prepre命令重新生成配置文件后,或者./install.sh命令重装后,还是会创建harbor_harbor随机网桥,可能会冲突

所以,在使用.prepre命令或者./install.sh命令后,记得修改docker-compose.yml 把最下面network false 改成true

2. 使用非172网段

如果使用非172网段,在步骤2:创建Harbor新的网桥,还需要修改/etc/docker/daemon.json中的bip

因为doker默认使用的也是172网段,所以harbor指定的也是172网段,就不需要额外修改docker配置,只需要修改harbor配置就好了

#修改docker 网络地址
$  cat /etc/docker/daemon.json 
{
    // 修改bip--network bridge IP
    "bip":"172.254.0.1/16"
}
# 重启docker
systemctl daemon-reload
systemctl start docker

参考链接

https://docs.docker.com/engine/reference/commandline/dockerd/#/linux-configuration-file

https://goharbor.io/docs/2.0.0/install-config/run-installer-script/

ne/reference/commandline/dockerd/#/linux-configuration-file

https://goharbor.io/docs/2.0.0/install-config/run-installer-script/

https://docs.docker.com/compose/compose-file/

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
8月前
|
Kubernetes 应用服务中间件 API
Nginx Ingress 退役,详细版迁移指引来啦
Ingress NGINX 退役引发开发者们的强烈关注,官方已经提供了完备的应对措施,迁移到 Gateway API,以及20+ Ingress 控制器。但实施迁移的时候,企业还会希望了解新的 Ingress 控制器是否兼容 Ingress NGINX 的注解,迁移过程中如何进行灰度切流,遇到流量损失如何快速回滚等,以保障迁移过程平滑,不影响线上业务。因此,本文将提供基于实操的应对方案,以阿里云云原生 API 网关(Higress 企业版)为例,按步骤详细阐述迁移的操作过程。
947 70
|
监控 网络协议 Ubuntu
Linux网络监控工具 - iftop
Linux网络监控工具 - iftop
812 1
|
存储 网络安全 数据安全/隐私保护
Docker harbor私有仓库部署与管理-2
Docker harbor私有仓库部署与管理
689 0
|
缓存 Ubuntu Linux
Docker Buildx 简介与安装指南
Docker Buildx 是一个强大的工具,提供了多架构构建、并行构建和高级缓存管理等功能。通过正确安装和配置 Buildx,可以显著提升 Docker 镜像的构建效率和灵活性。希望本文能帮助你更好地理解和使用 Docker Buildx,以提高开发和部署的效率。
7476 16
|
Kubernetes 网络协议 Perl
K8s网络不通Calico网络不通flannel网络不通
K8s网络不通Calico网络不通flannel网络不通
1275 4
|
Kubernetes 网络协议 Perl
k8s Failed to create pod sandbox: open /run/systemd/resolve/resolv.conf: no such file or directory
k8s Failed to create pod sandbox: open /run/systemd/resolve/resolv.conf: no such file or directory
1210 0
|
JavaScript Docker Python
下个时代的开发工具-Nix:声明式的运行环境构建器、简单场景下的docker替身
Nix 是一个独特的包管理工具和构建系统,采用声明式方法管理软件包和运行环境。它通过精确控制依赖关系和环境配置,确保软件的可重复性、隔离性和可追溯性。Nix 支持多语言开发环境,提供声明式配置、环境隔离、回滚与版本控制等核心功能,适用于复杂开发场景,有效解决依赖冲突和环境不一致问题。
2585 4
|
Kubernetes 应用服务中间件 Linux
k8s--如何将chart包托管至harbor
k8s--如何将chart包托管至harbor
749 3
|
Java Shell Maven
使用Nexus上传JAR包的两种方法
使用Nexus上传JAR包的两种方法
6571 0