我怎样才能允许从一个docker容器只访问一个URL

我想只允许传出的HTTP请求到特定的docker容器指定的url。 有没有一个相对无痛的方式来做到这一点?

我不这么认为。 如果所有请求都是通过代理完成的,那么您需要(a)设置代理,(b)适当地configuration规则,(c)安排工具(d)确保您的容器没有其他出站访问权限。

所以,也许这样会…

  • 在默认networking上创build一个代理容器
  • 创build一个孤立的内部networking( docker network create --isolated mynetwork隔离我的networking)
  • 将隔离的networking连接到代理容器( docker network connect...
  • 在隔离的networking上创build应用程序容器( docker run --net=mynetwork...

我不会说这是“相对无痛”的。

*好吧,你可以用iptables和string匹配内部包来破解一些东西,但只是说这让我感觉不干净。