首先,我是一个新的docker / linux / ufw和东西!
我在做什么:
我正在创build一个暴露端口的docker集装箱。 在这种情况下它的8080.该容器的行为如预期。
其次,我想closures服务器。 因此,我激活UFW,只允许22,80,443。
我本来以为我不能访问myserver:8080,因为这个端口是closures的! 我明白,docker使用iptables待办事项'的东西'路由到它。 到现在为止,对我来说可悲的只是“东西”。
所以我用这个内容创build了json文件/etc/docker/daemon.json :
{ "iptables": true }
意图确保我所有的港口都closures,UFW按照预期工作。
起初,一切似乎都工作得很好,直到我注意到我的容器不能再伸出去了。 看来,它不能解决的DNS。
所以我得到,我正在玩的东西,我不完全明白目前。
我正在尝试todo!
我基本上想要容器运行,封闭的端口。 但容器应该能够到达外部的http / https API。 我怎么能做到这一点?
任何帮助和支持我的学习过程是非常感谢:)
提前致谢。
问候,Hannes
DNS使用的标准端口是UDP 53,因此您必须在udf中允许输出端口53
sudo udf allow out 53
如果你想公开端口8080,并希望绑定容器的主机上的同一端口,那么你需要在主机的Iptables上打开8080端口。 / ufw。
docker run -d --name container_name -p 8080:8080 Image_name:tag