Harbor修改默认网段以及设置开机启动的方法

发布时间 2023-10-03 09:52:41作者: 济南小老虎

Harbor修改默认网段以及设置开机启动的方法


背景

docker 默认的网段是 172.16.xx.xx 网段. 
harbor进行设置时会自动加1 设置为 172.17.xx.xx
有时候这个网段是跟业务网段冲突的, 需要进行一下修改. 
但是需要注意的是. 已经使用过很久的harbor 修改起来是需要较大的耐心的
避免稍微不慎导致harbor不可用
具体方法应该分为两个
1. 设置harbor的网段
2. 设置harbor的伴随docker的启动. 

修改网段的方法

学习自: https://blog.csdn.net/fly910905/article/details/125798000

具体思路为:
docker-compose -f /data/harbor/docker-compose.yml down
关闭harbor

一般情况下会将harbor的网络执行删除
如果没有删除的话 需要使用 docker network rm harbor_harbor的方式删除
然后 docker network ls 进行查看. 

docker network create --driver=bridge --subnet=10.233.0.1/16 harbor

docker network ls && docker network inspect harbor 

[
    {
        "Name": "harbor",
        "Id": "1d8b6ea81ea43dcdba4a7aabd25df7db36df094a57ae6436e691aa4897f2677f",
        "Created": "2023-10-03T08:31:09.127441175+08:00",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": {},
            "Config": [
                {
                    "Subnet": "10.233.0.1/16",
                    "Gateway": "10.233.0.1"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },

注意需要修改 /data/harbor/docker-compose.yml down

将最后面的 是否使用外部网络设置为true

networks:
  harbor:
    external: true

然后重新创建harbor
docker-compose -f /data/harbor/docker-compose.yml up -d --force-recreate

验证可以启动起来. 

开机与伴随docker启动

Docker compose 不会伴随docker的启动而启动, 需要进行一下设置
方法学习自:https://blog.csdn.net/u012751272/article/details/118859114

cat >/usr/lib/systemd/system/harbor.service <<EOF

[Unit]
Description=Harbor service with docker-compose
Requires=docker.service
After=docker.service
 
[Service]
Restart=always
RemainAfterExit=yes
StandardError=null
StandardOutput=null
WorkingDirectory=/data/harbor/
ExecStartPre=/usr/bin/docker-compose -f /data/harbor/docker-compose.yml down 
ExecStart=/usr/bin/docker-compose -f /data/harbor/docker-compose.yml up -d
ExecStop=/usr/bin/docker-compose -f /data/harbor/docker-compose.yml down 
[Install]
WantedBy=multi-user.target
EOF

设置开机启动
systemctl enable --now harbor 

重启机器进行一下验证.