我有一个docker容器正在运行,我已将8090端口的主机映射到8080端口的docker容器(运行tomcat服务器)。有什么办法可以从容器中获取映射的端口信息吗?
即。有什么方法可以让我了解8090:8080从容器映射?
答案 0 :(得分:0)
当您link containers, docker sets environment variables可以在一个泊坞窗内使用时,告诉您如何与另一个泊坞窗进行通信。您可以手动执行类似操作,让您的docker了解主机的映射:
export HOST_8080=8090
docker run -p $HOST_8080:8080 -e "HOST_8080=$HOST_8080" --name my_docker_name my_docker_image /bin/bash -c export
<强>解释强>:
export HOST_8080=8090
在您的主机上定义了一个环境变量(因此您不必写两次&#34; 8090&#34;两次)。
-p $HOST_8080:8080
将主机上的8090端口映射到docker上的8080.
-e "HOST_8080=$HOST_8080"
在docker中定义environment variable,名为HOST_8080,值为8090.
/bin/bash -c export
只打印环境变量,以便您可以看到它实际上正在工作。将其替换为泊坞窗的CMD。