【问题标题】:Docker as a Proxy server for a web serviceDocker 作为 Web 服务的代理服务器
【发布时间】:2025-12-13 22:45:02
【问题描述】:

我的应用与支持代理服务器的网络服务集成。所以我需要进行集成测试来证明它有效。

所以我想用 Docker 创建一个本地代理服务器,我可以运行真正的集成测试来验证我的 web 服务可以通过代理接口调用而没有错误。

所以我尝试了https://github.com/jwilder/nginx-proxy

我启动了容器:

docker run -d -p 80:80 -v /var/run/docker.sock:/tmp/docker.sock:ro jwilder/nginx-proxy

当我使用它时,我得到一个 503 错误503 Service Temporarily Unavailable

我误解了这个代理的作用吗?

【问题讨论】:

  • 我认为这更接近您正在寻找的内容:github.com/sameersbn/docker-squid
  • 这应该是这个问题的答案。它对我有用。
  • 我运行了docker run --name squid -d --restart=always --publish 3128:3128 --volume /srv/docker/squid/cache:/var/spool/squid3 sameersbn/squid:3.3.8-22 我现在可以使用代理主机/端口docker_container.host:docker_container.port(3128) 测试我的Web 服务代理集成

标签: docker proxy


【解决方案1】:

虽然这个问题已经在 cmets 中解决了,但我还是尝试回答以下问题:

我是不是误解了这个代理的作用?

是的。您的项目需要的是正向代理的可用性,而您尝试使用的是反向代理。一旦您在Difference between proxy server and reverse proxy server查看评分最高的答案,这一点就会变得更加清晰

对于 TL;DR 时刻:

有许多可用的转发代理软件。您可以为您的项目选择其中任何一种。其中一些是:

【讨论】:

  • 没错。很棒的信息,我喜欢所有的链接。
  • 24 小时内我会奖励你 50+ 额外的赏金