항해99_6기_TIL
항해99 👩💻74일차 TIL
merrytang
2022. 5. 19. 20:06
⭐ Final Project ⭐
GithubAction을 이용한 재배포 (Node.js)
깃허브에서 secreteKey를 생성해준다.
- .env의 파일안에 시크릿키들은 FileZila로 옮겨줬기 때문에 따로 만들어주지 않았다.
1. Settings -> Secrets의 Actions -> 우측 상단의 New repository secret 클릭
2. 아래 화면에서 시크릿키와 값을 입력해주면 된다.
시크릿키 리스트
ssh -i <AWS 시크릿키> ubuntu@<AWS퍼블릭주소 ex)12.23.34.45>
HOST : @뒤에 AWS퍼블릭주소
USERNAME : @앞에 ubuntu
PASSWORD : AWS의 .pem 키를 브라우저에 드로그엔 드랍 시킨 후 텍스트가 나오면 복붙해서 붙여준다.
PORT : 22 (AWS에서 열어준 포트)
깃허브액션 코드
name: CI-CD
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
build:
runs-on: ubuntu-18.04
steps:
- name: Deploy
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
key: ${{ secrets.PASSWORD }}
port: ${{ secrets.PORT }}
script: |
cd /home/ubuntu/MyProject
git config --global --add safe.directory /home/ubuntu/MyProject
sudo git pull
sudo npm update
sudo npm install
sudo pm2 reload all
위와같은 코드로 SSH로 EC2인스턴스로 접속한 후, git pull 하고 최신 코드를 pm2로 재배포하도록 설정해주었다.