早上遇到一个问题:
pull了docker hub的java镜像,再把一个spring boot拷贝(cp)进去了,使用java -jar执行,调试信息显示执行成功,
但因为没有暴露端口(50000),无法在宿主机使用localhost:50000访问这个容器中的应用,
参考了一些网友的示例,使用iptables配置了端口映射,但还是没有成功:
sudo iptables -t nat -A DOCKER -p tcp --dport 50000 -j DNAT --to-destination 172.17.0.19:50000
然后执行了sudo iptables-save,
此时,使用运行的docker port container_id获取不到容器暴露的端口信息,
但使用下面的命令可以看到 上面iptables的配置是成功的:
$ sudo iptables -t nat -L -n --line-numbers
请问,要怎么解决这样的 容器运行后 再运行应用 再使用iptables 暴露 容器端口 的应用呢?
Ubuntu 18.04, docker-ce 18,
参考链接:
Docker动态给容器Container暴露端口
https://blog.csdn.net/lsziri/article/details/69396990
DOCKER 给运行中的容器添加映射端口
https://blog.csdn.net/github_29237033/article/details/46632647