컨테이너화 기술인 Docker는 애플리케이션과 애플리케이션에 필요한 모든 리소스를 미러에 패키징하여 배포 및 관리를 더 쉽게 만드는 데 도움이 됩니다. 포트 매핑은 Docker에서 매우 중요한 기능입니다. 이 문서에서는 Docker가 포트 매핑을 수행하는 방법을 소개합니다.
1. 포트 매핑의 개념
호스트에서 네트워크 요청을 처리할 수 있도록 Docker 컨테이너의 애플리케이션은 포트 번호에 바인딩되어야 합니다. 호스트 외부 네트워크가 컨테이너에 있는 애플리케이션에 액세스할 수 있도록 하는 호스트의 포트 번호이며 포트 매핑은 두 가지 모드로 나눌 수 있습니다. 하나는 무작위 모드이고 다른 하나는 지정 모드입니다.
2. 무작위 모드
Docker는 호스트에서 비어 있는 포트 번호를 자동으로 선택하고 이를 컨테이너 내부의 지정된 포트에 매핑합니다. 포트 매핑을 수행하는 경우 구체적인 명령은 다음과 같습니다.
$ docker run -p [宿主机端口]:[容器内部端口] image_name
그 중 호스트 포트는 임의의 포트 번호일 수 있습니다. 이때 docker ps 명령을 사용하면 매핑된 포트 번호를 볼 수 있습니다.
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c1abd02665a3 nginx "nginx -g 'daemon of…" 3 hours ago Up 3 hours 0.0.0.0:32768->80/tcp nginx
포트번호 32768은 Docker가 임의로 매핑한 호스트 포트번호임을 알 수 있습니다.
3. 지정 모드
호스트에 포트 번호를 지정하여 컨테이너 내부의 포트 번호에 매핑할 수 있습니다. 이는 프로덕션 환경에 배포하는 데 더 적합합니다. 포트 번호가 매핑되어 있어 포트 번호를 쉽게 관리하고 유지할 수 있습니다. 구체적인 명령은 다음과 같습니다.
$ docker run -p [宿主机端口]:[容器内部端口] image_name
그 중 호스트 포트는 80, 443 등 사용 가능한 포트 번호로 지정할 수 있습니다.
4. 컨테이너 내부 포트 지정
포트 매핑을 수행할 때 컨테이너 내부의 포트 번호를 지정해야 합니다. 지정하지 않으면 Docker는 매핑을 위해 컨테이너 내부의 애플리케이션이 수신하는 기본 포트 번호를 사용합니다. , 예: 80 포트 번호는 HTTP 서비스에 해당합니다. 80 포트 번호를 호스트의 8080 포트 번호에 매핑하려면 다음 명령을 사용하여 포트 매핑을 수행할 수 있습니다. 호스트의 8080 포트를 사용하여 컨테이너 내부 HTTP 서비스에 액세스할 수 있습니다.
5. 요약
포트 매핑은 컨테이너의 애플리케이션을 호스트 네트워크에 노출하여 쉽게 액세스하고 관리할 수 있도록 하는 데 도움이 됩니다. 임의 모드를 사용하거나 모드를 지정할 수 있습니다. 포트 매핑의 경우 컨테이너의 내부 포트 사양에 주의해야 포트 매핑을 보다 유연하게 구성할 수 있습니다.
위 내용은 Docker가 포트 매핑을 수행하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!