Mef*_*ico 5 docker docker-network
我正在尝试使用该标志为容器指定 IP --ip。但我收到以下消息:
Error response from daemon: user specified IP address is supported only when connecting to networks with user configured subnets.
这个消息是什么意思?如何让容器运行?
网络是使用以下命令创建的:
docker network create my_network_name
容器的调用方式为:
docker run -it --net my_network_name --ip 172.22.0.30 image_name
创建网络时,请提供网络中可用的私有 IP 范围的子网。然后,当您在此网络中创建容器时,从该子网中选择一个地址。
例如,IP 范围为 10.11.0.0/16,容器 IP 为 10.11.0.10:
$ docker network create my_network_name --subnet=10.11.0.0/16
$ docker run -it --net my_network_name --ip 10.11.0.10 image_name
Run Code Online (Sandbox Code Playgroud)
这是实际运行:
$ docker --version
Docker version 19.03.6, build 369ce74a3c
$ uname -a
Linux 4.15.0-112-generic #113-Ubuntu SMP Thu Jul 9 23:41:39 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
$ docker network create my_network_name --subnet=10.11.0.0/16
35a9e4e5fb4ff243202fc4f6b687901c3cbfcd8fe34e06290db5d257310417a2
$ docker run --rm -it --net my_network_name --ip 10.11.0.10 ubuntu
root@f0d283bc5023:/#
Run Code Online (Sandbox Code Playgroud)
在另一个窗口上:
$ docker network inspect my_network_name
[
{
"Name": "my_network_name",
"Id": "35a9e4e5fb4ff243202fc4f6b687901c3cbfcd8fe34e06290db5d257310417a2",
"Created": "2020-09-19T11:51:59.985580503-07:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "10.11.0.0/16"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"f0d283bc5023fbe8a1c854fd2bb5bdd121be7245013cfac62d9933f95ace7bbf": {
"Name": "sleepy_colden",
"EndpointID": "088fbd64b82e05920fda91b28ebb5b4a14c9fca3ac9fde457c8819663f6049df",
"MacAddress": "02:42:0a:0b:00:0a",
"IPv4Address": "10.11.0.10/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18888 次 |
| 最近记录: |