在内部IP的随机端口上暴露容器
我希望能够使用-P
参数运行容器,同时绑定到内部10.10.0.0/22子网。
默认情况下,一次做这样的事情:
docker run -d -P --name=nginx nginx
它看起来像这样:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES dbb556c99c81 nginx "/usr/sbin/nginx" 2 minutes ago Up 2 minutes 0.0.0.0:32773->80/tcp nginx
暴露在0.0.0.0/0有没有办法让这个我的内部IP?
使用-p
select单个端口时,可以手动绑定到特定的接口,例如:
$ docker run -d -p 127.0.0.1:8080:80/tcp --name test-nginx nginx 2e07ebc61bcdc82a187a27eabca10211a4c9ac09d66e516e5c176d7282cffe2b $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 2e07ebc61bcd nginx "nginx -g 'daemon off" 5 seconds ago Up 2 seconds 443/tcp, 127.0.0.1:8080->80/tcp test-nginx
使用-P
,它使用在守护进程( dockerd
或dockerd
docker daemon
)上configuration的接口。 默认情况下是0.0.0.0,但您可以将其更改为任何其他IP:
$ dockerd --help # ... --ip=0.0.0.0 Default IP when binding container ports
请注意,0.0.0.0正在监听所有接口,因此指定特定IP的唯一原因是进一步locking容器,而不是为您的环境打开容器。
- 为什么docker工人为了连续的后台进程而睡1?
- 在Jenkins中构buildDocker镜像(在Docker镜像中) – Cloud docker代理
- 虽然我使用maven docker插件构buildDocker镜像并未列出
- mysql_upgrade失败 – innodb表不存在?
- 如何让docker应用程序发送日志到openshift的内置日志聚合器?
- Docker C ++开发和CI
- docker-docker-compose nginx:主机在/etc/nginx/nginx.conf中的上游“httpstat.us”找不到:21
- tensorflow的现成docker图像下载
- 我在备份docker集装箱容量时位于何处?