继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

docker网段冲突了怎么办

linyb极客之路
关注TA
已关注
手记 174
粉丝 8
获赞 23

前言

最近ssh登陆公司远程服务器,突然登不进去,后经排查是因为有个docker容器的网段和公司的网段冲突了,导致登陆不上去。

如何解决

docker默认网段是172.17,和公司的网段冲突,因此解决的办法其实也挺简单的,要么换公司网段,要么换docker网段,是个正常人都会选择换docker网段

解决方案

方案一:不改docker网段,创建不和公司网段冲突的docker子网段

docker network create --driver=bridge --subnet=192.161.0.0/16 monitor_net

运行容器时指定

docker run -it --name <容器名> ---network monitor_net  <镜像名

在docker-compose同样通过networks指定,形如下

version: '3'
networks:
   monitor:
   #使用已经存在的网络
     external:
       name: monitor_net  

services:
    prometheus:
        image: prom/prometheus
        container_name: prometheus
        hostname: prometheus
        privileged: true
        restart: always
        volumes:
            - /usr/local/src/config/prometheus.yml:/etc/prometheus/prometheus.yml
            - /usr/local/src/config/node_down.yml:/etc/prometheus/node_down.yml
        ports:
            - "9091:9090"
        networks:
            - monitor
        links:
            - alertmanager
            - node-exporter

方案二:修改docker默认网段

1、停止docker

systemctl stop docker

2、删除原有网桥

ip link del docker0 down

3、vim /etc/docker/daemon.json,添加形如下内容

"bip":"192.161.20.1/24"

如果没有daemon.json文件,则新建

文件内容形如下

{
  "registry-mirrors": ["https://zq2cvqfe.mirror.aliyuncs.com"],
"insecure-registries":["192.168.1.30:5002"],
"bip":"192.161.20.1/24"
}

4、重启docker服务

systemctl restart docker

5、通过ifconfig 查看docker网段是否已经变更

image.png

总结

安装docker时,记得修改docker默认,以免和公司的网段冲突

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP