(Elastic Beanstalk라고 계속 쓰기 힘들기 때문에 지금부터는 EB로 쓴다.)
Elastic Beanstalk 페이지에서 "애플리케이션 생성" 버튼 클릭
애플리케이션과 환경을 동시에 세팅하고 있는 화면
(애플리케이션 페이지에서 생성하기 버튼을 누르면 애플리케이션 정보만 입력하도록 한다. 생성한 후 환경 세팅을 해주면 되기 때문에 걱정 X)
"애플리케이션 이름"에 원하는 이름을 적으면 환경 이름은 자동으로 채워지고 도메인과 환경 설명은 건들이지 않아도 된다.
플랫폼은 원하는 언어와 버전을 선택하고 애플리케이션 코드는 나중에 코드를 업로드 해도 되기 때문에 크게 다루지 않는다.
사전 설정에서 프리티어는 "단일 인스턴스"만 사용 가능하므로 선택하고 넘어간다. "다음"을 누른다.
서비스 액세스 구성에서 "기존 서비스 역할 사용"을 누르고 아래의 그림처럼 "기존 서비스 역할", "EC2 인스턴스 프로파일"을 설정한다.
"EC2 키 페어"에 내가 미리 만들어 둔 EC2를 연결한다.
기존 서비스 역할이 없다면, IAM로 이동한다.
- 액세스 관리 > 역할 > 역할 생성
- AWS 서비스를 선택, 사용 사례에 EC2를 선택하고 다음을 누른다.
- 아래 3개의 권한을 선택한 후 다음 클릭
AWSElasticBeanstalkWebTier
AWSElasticBeanstalkWorkerTier
AWSElasticBeanstalkMulticontainerDocker
- 역할 이름을 "aws-elasticbeanstalk-ec2-role"로 설정하고 신뢰할 수 있는 엔터티 선택의 그림과 내용이 같은지 확인한다.
- 위의 과정을 모두 끝낸 후 "역할 생성" 버튼을 누르면 완성!
EC2 인스턴스에서 내가 생성한 EB의 도메인 주소를 사용하여 SSH혹은 PuTTY로 접속해보면 똑같은 아래와 같은 화면을 보여준다.
/var/app/current
: 실행파일을 올리면 이 경로에 저장된다./var/log
: 로그들은 이 경로에 쌓인다web.stdout.log
: 웹/앱의 로그 파일eb-engine.log
: EB 자체 로그/var/log/nginx
: EB는 기본적으로 nginx 웹서버가 있고 그 안에 WAS 서버가 있는 형식이다. nginx 로그는 이 경로에 있다.EB 환경은 "구성"에 가서 설정한다.