본문으로 건너뛰기

Docker

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 이슈 #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