docker - Docker Compose 忽略来自其他容器的 iptables 配置
问题描述
我支持公司代理。为了在没有设置的情况下使用来自互联网的 Docker 容器,http_proxy
或者https_proxy
我正在使用nclarier/redsocks docker容器。
如果我通过运行docker run --privileged=true --net=host -d ncarlier/redsocks proxy.domain.com 8080
然后运行另一个容器来使用它,然后在 ubuntu 容器内docker run -it ubuntu bash
执行,一切都很好。curl google.com
但是,如果我将容器与 docker-compose 一起使用,则第二个容器无法访问互联网/不使用代理服务器。
这是yaml:
version: '3'
services:
proxy:
image: ncarlier/redsocks
command: proxy.domain.com 8080
privileged: true
network_mode: "host"
othercontainer:
image: ubuntu
depends_on:
- "proxy"
network_mode: "host"
stdin_open: true
tty: true
Docker compose 有什么不同吗?它需要一些特殊属性吗?Nclarier/redsocks 图像使用 iptables 来路由流量,我高度怀疑这是断点。
解决方案
推荐阅读
- angular - angular 的 Apollo 客户端:从 graphql 文件生成代码
- html - Vertical overflow always showing scrollbar which never works
- android - 例外:预打包的数据库具有无效的架构
- javascript - 未捕获的错误:无法处理绑定“foreach”(淘汰 js)
- windows - How to replace all fields with trim(field_name) for all string automatically in notepad++
- android - 我可以访问在运行时创建的 Android toast XML 吗?
- javascript - 如何让 JavaScript execCommand("paste") 在 Electron 中工作?
- node.js - Multer Encoding Issue: localized text getting converted random character
- php - How to auto format PHP code curly braces to new lines in VS Code
- .htaccess - 如何通过 .htaccess 重定向 url