使用squid 让 docker for mac 支持基于容器ip 访问
尽管docker for mac 实现了类似linux 的docker 使用体验,但是毕竟使用技术上是不一样的(还是虚拟化技术)
但是我们可以直接基于正向代理实现直接基于容器ip 的访问体验
环境准备
- docker-compose
version: "3"
services:
nginx:
image: nginx
ports:
- "80:80"
squid:
image: datadog/squid
ports:
- "3128:3128"
使用
- 启动
docker-compose up -d
- 查看nginx ip
可以基于docker inspect 命令 - 配置http proxy
- 访问效果
说明
squid 也是支持socket5 协议的,目前我测试的镜像很版比较低,可以选择其他的,或者自己构建
参考资料
https://hub.docker.com/r/datadog/squid
https://github.com/wrouesnel/docker-squid4
https://github.com/sameersbn/docker-squid
https://hub.docker.com/r/ubuntu/squid
https://hub.docker.com/r/b4tman/squid
https://github.com/b4tman/docker-squid