문제점
Docker-compose 사용시 내부 컨테이너에서 외부 호스트의 접근이 필요한 경우가 발생한다.
기존 Mac에서 로컬 사용시에는 도커 컴포즈 설정파일에서 아래와 같이 사용했었다.
service
nginx:
image: nginx:latest
extra_hosts:
- "host.docker.internal:host-gateway"
....
이후에 nginx에서 reverse-proxy 처리를 host.docker.internal 로 요청하면 되었지만....
우부투에선 host-gateway가 제대로 동작되지 않는다.
해결
1. host.docker.internal 에 서버 아이피 매핑
- "host.docker.internal:서버아이피"
2. 방화벽 설정
방화벽을 열어줄 대상은 도커 네트워크 아이피 대역
ipconfig 를 통해 확인해보면 docker 가 사용하는 아이피대역을 확인할 수 있다.
#예시
sudo ufw allow from 172.18.0.0/16 to any port 8888
예시로 8888 포트를 허용하였다.
이후 정상적으로 리버스프록시되는 모습을 확인할 수 있다.
호스트를 요청하는 경우는 거의 없어야겠지만, 위와 같은 방안으로 대응도 가능하다는 점을 공유한다.
반응형
'운영체제 및 서버 > Linux' 카테고리의 다른 글
Ubuntu 24.04 (24.04.1) Fuse 설치 후 부팅 안되는 현상 (0) | 2024.11.12 |
---|---|
Docker 사용시 UFW 가 적용 안되는 이슈 (0) | 2024.10.11 |
Ubuntu 22.04 UFW 방화벽 설정 (0) | 2024.08.30 |
우분투 리눅스 ssh / sshd 설치 및 세팅 (0) | 2024.04.09 |