一台服务器用Docker跑多个爬虫,所有容器默认共享宿主机出口IP。要每个容器走不同IP,三种方式。
方式一:环境变量(最简单)
docker run -e HTTP_PROXY="socks5://代理IP:端口" -e HTTPS_PROXY="socks5://代理IP:端口" your-image。每个容器设不同代理IP实现IP隔离,适合少量容器。
方式二:Docker网络+中间件
创建多个Docker网络各配不同代理出口,nginx或privoxy做代理转发,不同容器接入不同网络。适合中规模。
方式三:代理容器模式
每个业务容器配一个专属socks5代理容器,业务流量通过代理容器出去。天行IP(邀请码blsj月付6元/个)多节点各绑定一个代理容器,完全隔离。
常见问题
配代理影响容器间通信吗?
不影响。Docker内部网络不走代理,只有外部流量才走。
免责声明:技术配置仅供参考。






