현재 위치: > 최신 기사 목록> Docker 컨테이너 네트워크 구성 가이드: PHP 프레임워크 애플리케이션을 효율적으로 배포

Docker 컨테이너 네트워크 구성 가이드: PHP 프레임워크 애플리케이션을 효율적으로 배포

M66 2025-11-03

소개

Docker 컨테이너 네트워크는 여러 컨테이너가 동일한 네트워크에서 서로 통신할 수 있도록 하며 PHP 프레임워크 애플리케이션을 효율적으로 배포하는 데 핵심입니다. 이 글에서는 컨테이너 간의 원활한 연결을 보장하기 위한 Docker 네트워크 구성 방법을 자세히 소개합니다.

전제조건

  • 도커가 설치됨
  • PHP 프레임워크 애플리케이션

도커 네트워크 유형

Docker는 다양한 시나리오에 적합한 여러 네트워크 모드를 제공합니다.

  • 브리지: 컨테이너가 호스트 및 다른 컨테이너와 통신할 수 있도록 브리지 네트워크를 만듭니다.
  • 호스트: 호스트 네트워크 스택을 사용하여 컨테이너는 호스트 네트워크에 직접 액세스합니다.
  • 없음: 네트워킹을 비활성화하고 컨테이너는 외부 또는 다른 컨테이너와 통신할 수 없습니다.

실제 사례

Laravel PHP 프레임워크 애플리케이션을 배포하고 MySQL 데이터베이스 컨테이너와 통신해야 한다고 가정해 보겠습니다. 구성을 위해 브리지 네트워킹을 사용합니다.

커스텀 네트워크 만들기

 도커 네트워크가 내 네트워크를 생성합니다.

MySQL 컨테이너 실행

 docker run -d --name db --network my-network mysql

Laravel 컨테이너 실행

 docker run -d --rm --name laravel --network my-network laravel:8.0

이 시점에서 Laravel 컨테이너는 db를 통해 MySQL 컨테이너에 액세스할 수 있습니다.

컨테이너 포트 노출

Laravel 애플리케이션을 외부에서 액세스할 수 있으려면 컨테이너 포트가 노출되어야 합니다.

 도커 포트 라라벨 80

그러면 Laravel 컨테이너의 포트 80이 노출됩니다.

컨테이너 연결 확인

다음 명령을 사용하여 컨테이너 간 통신을 확인합니다.

 도커 exec laravel ping db

다음과 유사한 내용이 표시되면 통신이 정상입니다.

 PING db (172.17.0.2) 56(84) 바이트의 데이터.
172.17.0.2의 64바이트: icmp_seq=1 ttl=64 time=0.065 ms

결론적으로

Docker 컨테이너 네트워크를 올바르게 구성하면 PHP 프레임워크 애플리케이션과 데이터베이스 컨테이너 간의 효율적인 상호 연결이 가능합니다. Docker 네트워크는 애플리케이션 격리를 보장할 뿐만 아니라 컨테이너 간의 안정적인 통신을 보장하여 개발 및 배포를 위한 안정적인 환경을 제공합니다.