홈>
퍼즐 조각이 없습니다. 다음을 통해 도커 이미지 실행 (예 : Linux EC2 인스턴스)
> sudo docker run -p 80:xyzw webapp_image:version
포트 80에서컨테이너에 접근 할 수있게합니다 (
EXPOSE xyzw
를 통해).
Dockerfile
에서
) 컨테이너가 호스트에 영향을 미쳤음을 나타냅니다.
Docker 컨테이너의 전제와 모순되지 않습니까? 가상화와 마찬가지로 컨테이너가 샌드 박스에서 실행되고 호스트에 영향을 줄 수 없다는 아이디어가 나타났습니다. 그러나 여기서는 호스트 포트에 노출 될 수 있습니다. 이것이 가능하다는 사실이 가정 된 격리를 위반하지 않습니까? 컨테이너가 아닌 호스트의 명령 행에서 맵핑을 수행하지 않아야합니까? 동일한 호스트에 두 개의 컨테이너가 있고 둘 다 동일한 포트를 통해 노출하려고 시도하면 누가 먼저 도착하는지 알기 위해 경쟁이 발생할 수 있습니다. 아니면 호스트의 명령 행에서 매핑이 발생한다는 것을 제외하고 샌드 박싱이 실제로 관찰된다는 생각입니까?
- 답변 # 1
- 답변 # 2
이 줄을
How do I route port 80 of the EC2 instance to port 80 of the container?
$ sudo docker run -p 80:80 webapp_image:version
를 실행하십시오. . -p 80:80 옵션은 컨테이너의 노출 된 포트 80을 호스트 시스템 (EC2)의 포트 80에 매핑합니다.EXPOSE 80
관련 질문
- Docker 구성으로 배포 된 AWS 인스턴스에서 하나의 컨테이너 만 업데이트
- AWS에서 허용 된 IP로 다른 계정에서 RDS를 연결하는 방법은 무엇입니까?
- 탄력있는 /elasticsearch : AWS 클러스터에서 VolumeClaimTemplate로 보류 중 상태에 갇혀있는 포드
- proxy : 백엔드가 PathPrefixStrip을 사용하여 백엔드로 라우팅 할 때 백엔드가 요청을 리디렉션하는 경우 경로 접두사를 유지할 수 있습니까?
- AWS ECS Docker 컨테이너에서 메시지를 배출하는 방법 Autoscaling 그룹 뒤에서 JMS 대기열에 연결된 컨테이너
- Python Docker 이미지를 AWS Lambda에 배포하는 방법은 무엇입니까?
- DockerFile의 AWS 자격 증명
- azure : Apache에서 깨진 응답 헤더를 디버깅하려면 어떻게해야합니까?
- HTTP를 AWS 응용 프로그램로드 밸런서에서 HTTPS로 리디렉션하는 방법은 무엇입니까?
와이즈 비즈
컨텍스트를 이해했다면 아래 명령을 실행하여이 작업을 수행 할 수 있습니다-
와이즈 비즈
이것은 호스트 머신의 포트 80을 컨테이너의 포트 80으로 라우팅합니다.
이후 EC2 인스턴스의 보안 그룹에서 포트 80을 열어야합니다. 그래도 작동하지 않으면 검사 점을 따르십시오-
1. iptables, selinux 등과 같은 호스트 시스템의 방화벽
2. AWS에서 EC2 인스턴스 보안 그룹의 유효성을 검사합니다.
3. AWS에서 서브넷에 대한 NACL 규칙의 유효성을 검사합니다.