홈>
퍼즐 조각이 없습니다. 다음을 통해 도커 이미지 실행 (예 : 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
관련 질문
- OSError:lib64/libm.so.6:버전 `GLIBC_2.27'을 찾을 수 없음 /var/lang/lib/python3.9/site-packages/opensmile/core/bin/linux/libSMILEapi.so
- AWS의 API Gateway에서 504 오류를 수정하는 방법은 무엇입니까?
- java : Docker와 함께 AWS 사용: 리전 공급자 체인을 통해 리전을 찾을 수 없음
- 인바운드 포트 수정 없이 기존 네트워크 사용
- 도커 내부 도커
- AWS 레지스트리 인증의 도커 로그인에 "-없음"이 표시되는 이유는 무엇입니까?
- mongodb : docker는 다른 포트에서 mongo 이미지를 실행합니다.
- docker engine api http exec 호출 결과에서 이진 문자를 피하는 방법은 무엇입니까?
- docker-machine은 인스턴스의 IP 변경 후 AWSEC2 인스턴스에 SSH로 연결할 수 없습니다.
- Windows 홈 OS가 설치된 랩톱에서 "docker run --rm -it -v $PWD:/data -w /data hashicorp/terraform:light init" docker 명령을 실행하는 중 오류가 발생했습니까?
와이즈 비즈
컨텍스트를 이해했다면 아래 명령을 실행하여이 작업을 수행 할 수 있습니다-
와이즈 비즈
이것은 호스트 머신의 포트 80을 컨테이너의 포트 80으로 라우팅합니다.
이후 EC2 인스턴스의 보안 그룹에서 포트 80을 열어야합니다. 그래도 작동하지 않으면 검사 점을 따르십시오-
1. iptables, selinux 등과 같은 호스트 시스템의 방화벽
2. AWS에서 EC2 인스턴스 보안 그룹의 유효성을 검사합니다.
3. AWS에서 서브넷에 대한 NACL 규칙의 유효성을 검사합니다.