체크리스트
- 포트를 8080 으로 하였는가?
- pm2 를 설치하였는가?
- script를 추가하였는가?
PM2 사용하기
설치
npm i pm2 --force
script 추가
"deploy": "npm i --force && npm run build && npx pm2 start dist/main.js",
"redeploy": "npm i --force && npm run build && npx pm2 reload all"
시작
- EC2 대여 (최소 t2.small , micro 는 안돌아간다)
- 탄력적 IP 생성 및 할당
- ssh 접속
- nvm 설치
sudo apt install curl
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
source ~/.bashrc
nvm install node
- sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080
- git clone <프로젝트 주소>
- git config --global credential.helper store (매번 로그인안하도록 설정)
- npm run deploy
이제 매번 코드를 업데이트 한다면 거쳐야 할 과정이 아래와 같다.
ssh 접속 -> git pull origin master -> npm run redeploy
CICD gitghub Actions
다음액션을 사용한다.
(다음에 계속 ..)
반응형
'Archive' 카테고리의 다른 글
github actions SSH + EC2 CICD 파이프라인 구축(삽질 10시간이상) (0) | 2022.08.05 |
---|---|
EC2 ubuntu password로 접속가능하게 하기 (0) | 2022.08.05 |
SSH 접속시 host가 변경되었을때 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! (0) | 2022.08.04 |
TypeORM timezone, charset 설정 (0) | 2022.08.01 |
DB의 시간차이 문제 (0) | 2022.08.01 |