BMi*_*tch 45
该--hostname标志仅更改容器内的主机名.如果您的应用程序需要主机名的特定值,则可能需要这样做.它不会在docker之外更改DNS,也不会更改网络隔离,因此不允许其他人连接到具有该名称的容器.
您可以使用容器名称或容器(简称12个字符)id,使用docker的嵌入式dns从容器连接到容器,只要您在同一网络上有两个容器并且该网络不是默认网桥.
Ehu*_*Lev 12
如果您需要以同一网络中的其他容器可以看到的方式更改主机名,只需使用 --net-alias=${MY_NEW_DNS_NAME}
例如:
docker run -d --net-alias=${MY_NEW_DNS_NAME} --net=my-test-env --name=my-docker-name-test <dokcer-contanier>
Run Code Online (Sandbox Code Playgroud)
请参阅:overlay docker network 中 --link 和 --alias 的区别?
Nic*_*aid 11
这不是一个直接的答案,我只是想总结一些不太清楚的东西。
为了让容器能够相互通信,
docker network create MyNetwork
docker run --network MyNetwork --name Container1 Image1
docker run --network MyNetwork --name Container2 Image2
现在,如果Container1是在端口 80 上运行的 Web 服务器,则内部进程Container2将能够使用主机名Container1和端口 80来解析它
此外,如果 Container1 设置如下:
docker run --network MyNetwork --name Container1 -p 8080:80 Image1
然后
您还可以使用以下命令确认容器已连接并检查其内部 IP 地址:
docker network inspect MyNetwork
--hostname是可以与docker run将指定名称设置为容器主机名的命令一起提供的参数,而是--ip用于将特定ip地址(ipv4)设置到该特定容器的参数。
docker run --hostname test --ip 10.1.2.3 ubuntu:14.04
Run Code Online (Sandbox Code Playgroud)
以下命令将创建一个Docker容器,其基本映像为ubuntu-14.04,主机名为test,容器ip地址为10.1.2.3
| 归档时间: |
|
| 查看次数: |
34453 次 |
| 最近记录: |