跳到主要内容

Docker

使用 Proxyman 抓取 Docker 服务的 HTTP/HTTPS 流量,并配置容器通过 Proxyman 转发外发请求。

1. 抓取 Docker 容器中的流量​

默认情况下,Proxyman 可以抓取从 Mac 发送到 Docker 容器中运行的服务的请求。

例如,以下是一个示例 Docker 容器的搭建方法:

  1. 使用 NodeJS + Express 搭建一个简单的 HTTP 服务器,然后用 Docker 将其容器化。你可以在 https://nodejs.org/en/docs/guides/nodejs-docker-webapp/ 找到相关指南。
  2. 确保服务器在 8080 端口对外暴露。
  3. 可以在 Safari 中打开 http://localhost:8080 进行验证。

2. 抓取 Docker 容器内部的流量​

请参阅 GitHub issue #419 中的步骤。

3. 替代方案:​

  1. 添加 docker-compose.proxyman.yml 文件。将 <php8.1-fpm-xdebug> 替换为服务名称
version: '2'
services:
php8.1-fpm-xdebug:
environment:
HTTP_PROXY: host.docker.internal:9090
HTTPS_PROXY: host.docker.internal:9090
http_proxy: host.docker.internal:9090
https_proxy: host.docker.internal:9090
  1. 启动 Docker:

docker-compose -f docker-compose.yml -f docker-compose.proxyman.yml up -d

参考:https://github.com/ProxymanApp/Proxyman/issues/1712#issuecomment-1642279537