EC2인스턴스 생성 후 개발환경 구축 방법
$ sudo apt update
$ nvm install node
$ sudo apt install npm
노드가 잘 설정되지 않을 경우에는 아래의 링크를 들어간다
GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions
Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions - GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active nod...
github.com
이 부분 터미널에 입력하고
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
이 부분 입력하면 nvm 설정이 됨
export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
EC2 인스턴스에 태그와 역할 부여
태그 부여하기
EC2대시보드 이동 -> 인스턴스 이동
태그 추가-> 자유롭게 이름 지은 후 저장(지은 이름들은 다 기억하기!)
새 IAM역할 생성-> 역할 만들기->AWS서비스, EC2선택 후 '다음권한'클릭
검색창에서 AmazonSSMFullAccess, AWSCodeDeployRole 선택
신뢰관계: 해당 역할을 취할 수 있는 서비스나 사용자를 명시하는 부분
정책문서에서 "Service"의 값 수정 -> 생성한 IAM역할 선택 후 저장
EC2대시보드-> 보안 그룹->하단의 '보안 탭' 클릭 ->보안그룹 이동-> 보안그룹의 인바운드에 80과 443포트가 없다면 [인바운도 규칙 편집]버튼 클릭 및 이동->HTTP, HTTPS 유형의 위치를 무관으로 추가-> 규칙 저장
*80번은 서버 배포를 위해 필요
*443은 CodeDeploy-Agent의 정상적인 작동을 위해 필요
EC2를 활용한 파이프라인 구축
기존 레포지토리 최상위에 appspec.yml(배포 자동화를 도와주는 CodeDeploy-Agent가 인식하는 파일)파일 추가
version: 0.0
os: linux
files:
- source: /
# 아래 destination은 여러분이 해당 리포지토리를 클론한 위치로 설정해주세요.
destination: ~/fe-sprint-practice-deploy
hooks:
ApplicationStop:
- location: scripts/stop.sh
runas: root
AfterInstall:
- location: scripts/initialize.sh
runas: root
ApplicationStart:
- location: scripts/start.sh
runas: root
script디렉토리 생성 후 필요한 파일 설치(파이프라인에 올릴 소스 코드 준비)-> commit-> master로 push
AWS CodeDeploy대시보드에서 애플리케이션 클릭
애플리케이션 생성-> 임의의 이름 입력-> 컴퓨팃 플랫폼을 'EC2/온프레미스' 선택 -> 생성 클릭 -> 애플리케이션 배포 그룹 클릭 -> 이름 임의로 작성 -> 서비스 역할 영역을 'EC2Role'로 선택 -> 환경 구성을 'Amazon EC2 인스턴스'선택->로드 밸런싱 활성화 체크 해제-> 배포 그룹 생성 클릭
파이프라인 생성 버튼 클릭 -> 파이프라인 이름 입력 후 '다음' 클릭-> 소스 공급자를 'GitHub(버전2)'로 선택-> GitHub에 연결 -> 이름 임의 입력 후 '새 앱 설치'버튼 클릭-> 자신의 GitHub 계정을 클릭 -> 'only select repositories'를 선택 후 'save'를 클릭
개발자도구-CodePipeline-파이프라인-새 파이프라인 생성-빌드 스테이지 추가-빌드스테이지 건너뛰기
배포 스테이지->'AWS CodeDeploy'선택-> 이름 선택, 배포 그룹 선택
완료하면 된다!
'프로그래밍 > 개발 상식 등' 카테고리의 다른 글
개발자 일반면접 대비 질문 모음 (4) | 2022.10.18 |
---|---|
Git branch 다루기 (0) | 2022.08.22 |
Amazon Web Service를 이용한 웹 애플리케이션 배포 (2) | 2022.08.05 |
티스토리 코드 크기 크게하는 방법(html, css) (0) | 2022.07.25 |
[UI UX] UI와 UX의 차이점 (0) | 2022.06.27 |
댓글