2013-07-08 2 views
2

아마존 EC2에서 노드 애플리케이션을 개발 중입니다. 모든 것이 잘 작동하고 Heroku와 Github 모두에 배포 할 수 있지만 포트 5000에서 실행중인 실제 응용 프로그램 (또는 내가 응용 프로그램에서 사용하는 응용 프로그램)을 보는 데는 별 손실이 있습니다.Amazon EC2 - 특정 포트를 통해 응용 프로그램에 액세스합니다.

ifconfig을 실행 해 보았는데 공개/개인 DNS 주소를 사용했습니다. 이 URL을 URL로 사용하지 못했습니다.

탄성 IP 주소를 만들어야합니까? 배포하기 전에 내 앱을 볼 수있는 간단한 방법이 있습니까?

답변

1

AWS에서 방화벽 (보안 그룹)을 통해 포트를 사용해야합니다. Elastic IP를 가질 필요는 없지만 IP를 붙이지 않은 상태로 보관하면 (충전 된대로) IP가 붙어 있지 않은 것을 기억할 수는 있지만 첨부 된 IP의 경우 완전히 괜찮습니다.

이동에 : 인스턴스에 특정 포트에 액세스하기 위해
EC2 > Security Groups > 'select your group' > 'tab Inbound' > Add IP > Apply

+0

'IP 추가'는 보안 그룹 옵션 중 하나가 아닙니다. (http://i.imgur.com/sayGKOS.png 참조) – squeezemylime

+0

포트를 아래 필드에 바로 입력하고 방금 보는 사전 설정을 무시하십시오 (스크린 샷). – moka

3

당신은 방화벽에서 해당 포트를 열어야합니다. 가지고있는 다른 인스턴스에서 포트에 액세스 할 수 없도록 Node.js 서버 전용 그룹을 만드는 것이 좋습니다.

EC2에
  1. > 보안 그룹
  2. 어느 기존 보안 그룹을 선택하거나 하나
  3. 는 SSH 새로운 인바운드 사용자 정의 TCP 규칙 만들기 인바운드 0.0.0.0/0
  4. 허용되어 있는지 확인 생성 0.0.0.0/0 Security Group
  5. 클릭 규칙 추가
  6. 클릭이 규칙을 적용 할 수 있도록 포트 5000
012을 변경합니다 이 예에서

Public DNS

공공 DNS를 : 인스턴스에 대한 귀하의 공공 DNS를 얻을이를 볼 때까지 EC2는> 인스턴스가, 다음 예를 클릭하고 정보 창에서 아래로 스크롤을 클릭하기 위해 3,516,

ec2-23-20-36-91.compute-1.amazonaws.com이고 따라서 IP를 원하면 23.20.36.91입니다. 그런 다음 23.20.36.91:5000 또는 ec2-23-20-36-91.compute-1.amazonaws.com:5000에 연결할 수 있습니다.

그렇게해야합니다. 잘하면이 도움이됩니다!

+0

시도했는데 .. 불행히도 작동하지 않습니다 ... – squeezemylime

+0

내 IP 주소를 얻으려면 ifconfig를 실행하고, 다음을 추가하십시오 : 5000 (제안 사항을 따른 후) 그러나 여전히 서버를 찾을 수 없습니다. – squeezemylime

+0

인스턴스에서 ifconfig를 실행하면 AWS 클라우드 내의 다른 인스턴스 (보안 그룹에 의해 허용 된 경우)에서만 연결할 수있는 내부 IP를보고하는 것 이상입니다. 인스턴스의 IP를 찾으려면 공용 DNS를보고 대신 사용하십시오. 그에 따라 내 대답을 업데이트 할 것입니다. – tbjers