Docker-局域网络配置

在工作中我们有时候会需要自己的站点或者接口去访问内部的其它站点和接口,但又部署在其它机器上,这时候使用docke默认的网络配置是ping不通局域网的ip的,所以我们要自定义配置网络。

经过翻阅docker官方文档,docker服务移动后设置一个docker0虚拟网桥,所有容器都是通过这个网桥连接网络。需要在宿主机设置一个内置网段并绑定到docker服务。

下面以CentOS7系统为例:

service docker stop

ip link set dev docker0 down

brctl delbr docker0

iptables -t nat –F POSTROUTING

新增虚拟网桥:

brctl addbr bridge0

ip addr add 192.168.1.1/24 dev bridge0 (这里注意,不要和要访问的ip地址在同一网段,比如你要访问172.17.4.33,这里就不要设置为 172.17.4.1)

ip link set dev bridge0 up

然后需要修改配置文件:/usr/lib/systemd/system/docker.service
其中新增 $DOCKER_OPTS \


[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target
Wants=docker-storage-setup.service
Requires=docker-cleanup.timer

[Service]
Type=notify
NotifyAccess=all
EnvironmentFile=-/run/containers/registries.conf
EnvironmentFile=-/etc/sysconfig/docker
EnvironmentFile=-/etc/sysconfig/docker-storage
EnvironmentFile=-/etc/sysconfig/docker-network
Environment=GOTRACEBACK=crash
Environment=DOCKER_HTTP_HOST_COMPAT=1
Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
ExecStart=/usr/bin/dockerd-current \
          --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
          --default-runtime=docker-runc \
          --exec-opt native.cgroupdriver=systemd \
          --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
          $OPTIONS \
          $DOCKER_OPTS \
          $DOCKER_STORAGE_OPTIONS \
          $DOCKER_NETWORK_OPTIONS \
          $ADD_REGISTRY \
          $BLOCK_REGISTRY \
          $INSECURE_REGISTRY\
          $REGISTRIES
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
TimeoutStartSec=0
Restart=on-abnormal
MountFlags=slave
KillMode=process

[Install]
WantedBy=multi-user.target

接下来

vi /etc/sysconfig/docker,

新增:

DOCKER_OPTS=”-b=bridge0″

执行命令:

systemctl daemon-reload

service docker restart

iptables –t nat –L –n

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值