荣耀之链论坛

 找回密码
 立即注册
搜索
查看: 531|回复: 0

windows docker 创建nat网络 以及重启服务器以后重新固定IP

[复制链接]

1326

主题

2373

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
10267
发表于 2023-5-23 17:37 | 显示全部楼层 |阅读模式
https://blog.csdn.net/weixin_39305029/article/details/105187066


我自己总结的方法:

首先,创建一个自定义的nat网络 注意:windows的docker只能创建NAT网络 不能创建bridge
docker network create --driver=nat --subnet=172.18.0.0/16 nat1
然后创建固定IP的容器
docker run -d -v C:\D2-1\D2GS:C:\D2GS -v C:\D2-1\SaveFile:C:\SaveFile --network nat1 --ip 172.18.1.1 --name D2GS1 -it mcr.microsoft.com/windows/server:ltsc2022 cmd.exe
然后重启服务器
重启完毕docker启动不了,提示网络没有了,是因为服务器重启以后自定义的网络会被删掉,这个时候手动重新创建网络,然后删掉docker的网卡,重新设置网卡
docker network disconnect nat1 D2GS1
docker network connect nat1 D2GS1
docker start D2GS1
docker exec -it D2GS1 cmd

首先查看容器的网络信息
netsh int ipv4 show con
然后用命令修改容器的IP
netsh int ipv4 add address "vEthernet (Ethernet)" 172.18.1.1 255.255.0.0
这里会提示Access is denied
这个时候查看ipconfig还是没有新IP
然后我又输入了一遍netsh int ipv4 add address "vEthernet (Ethernet)" 172.18.1.1 255.255.0.0
提示The object already exists.
很奇怪,这次提示说已存在,查看IP就有了,估计是要输入2遍这个命令

如果需要的IP被随机分配到其他的容器上了,只需要重启其他的容器,他会自动换IP的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

荣耀之链

GMT+8, 2025-6-18 03:35 , Processed in 0.012526 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表