본문 바로가기
Git

[Git] EC2서버 자동 배포 Github Actions 셋팅

by coding_su 2022. 12. 20.

📝수정한 파일을 EC2서버에 자동 배포하기 위한 Github Actions 셋팅

우선 윈도우즈의 경우 ppk파일을 pem파일로 변환한여 사용한다

※ pem파일로 변환은 PuTTYgen을 실행시켜 기존 ppk파일을 로드한 후

 상단의 Conversions 메뉴에 Export Open SSH를 선택해 파일명.pem으로 저장한다

 

Github로 가서 자동배포를 설정할 repository의 설정(Settings)으로 들어가서

Security > Secrets > Actions > New repository secret 생성

SSH로 접속할때 사용했던 호스트네임, 키, 유저정보를 각각 입력하여 생성한다

※ 호스트네임은 AWS 퍼블릭 IPv4 주소, 키 정보는 pem파일을 드래그해 열어 복사 후 입력, 유저 정보는 ec2-user를 입력한다

 수정버튼을 클릭하면 기존 내용은 보이지않음으로 주의

이렇게 필요한 정보들을 저장했다면 repository의 Actions으로 들어가서

New workflow > set up a workflow yourself, 아래 코드를 입력하여 생성한다

※ 들여쓰기(Tab) 중요

 key, host, username의 ${{ }} 안에 위에서 저장한 정보의 이름을 적는다

 script: | 아래의 cd streamlit_car_price_app는 해당 파일로 이동하라는 명령이기 때문에 cd 파일명을 입력해주면 된다

name: ec2 deploy
on:
  push:
    branches:
      - main
      
jobs:
  SSH:
    runs-on: ubuntu-latest
    
    steps:
      - uses: actions/checkout@v3
      - name: ssh to ec2
        uses: appleboy/ssh-action@master
        with:
          key: ${{ secrets.SSH_PRIVATE_KEY }}
          host: ${{ secrets.HOST }}
          username: ${{ secrets.USER }}
          script: |
            cd streamlit_car_price_app
            git pull

 

댓글