728x90
pre
github action을 사용하여 ec2에 배포하는 것을 자동화 하는 테스트 진행 중
목적
ec2에 접속하기 위한 pem key 등록 및 접속
name: EC2 deploy
on:
push:
branches: ["main"]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Tests
run:
echo "hello world"
1. 레포 -> Setting -> Secrets and variables -> action 선택
- 깃허브 액션 용 시크릿 파일을 담아두게따.
2. New Repository secret -> 새로운 secret 정보 추가
- 비밀리에 관리
- 깃허브액션이 사용하는 과정 내에서 Pem 키를 볼 수 없음
3. pem key 적용 및 실행 결과 확인
name: EC2 deploy
on:
push:
branches: ["main"]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Tests
run:|
echo "hello world"
echo "${{ secrets.EC2_PRIVATE_SECRET }}" > ec2-private-key.pem
chmod 400 ec2-private-key.pem
- secrets.EC2_PRIVATE_SECRET 파일을 가져와 ec2-private-key.pem 파일에 저장한다.
- 해당 pem파일에 대한 읽기 권한을 사용자에세 부여한다.
- secret 파일이라 보이지 않는 것을 확인 가능
4. ssh 사용 ec2 접속 관련 명령어 추가
- ec2 인스턴스 세부 정보 -> 연결 -> ssh 클라이언트
- ec2의 주소 복사
name: EC2 deploy
on:
push:
branches: ["main"]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Tests
run: |
echo "hello world"
echo "${{ secrets.EC2_PRIVATE_SECRET }}" > ec2-private-key.pem
chmod 400 ec2-private-key.pem
ssh -i ec2-private-key.pem ubuntu@ec2-3-34-122-10.ap-northeast-2.compute.amazonaws.com
핑거 프린트 옵션 제거하기
... 일치하여 생략 ...
run: |
echo "hello world"
echo "${{ secrets.EC2_PRIVATE_SECRET }}" > ec2-private-key.pem
chmod 400 ec2-private-key.pem
ssh -o StrictHostKeyChecking=no -i ec2-private-key.pem ubuntu@ec2-3-34-122-10.ap-northeast-2.compute.amazonaws.com '
date > current_time.txt
echo ls
'
- ssh -o StrictHostKeyChecking=no 를 사용하여 핑거프린트 옵션 제거
- current_time.txt에 값을 넣음으로써 ssh 연결 이후의 명령어가 잘 실행 되는지 파악
야호
5. 동작 확인
- pem 키의 권한이 너무 넓게 잡혀있어 ec2가 실행되지 않을 경우가 높다.
- chmod 400 을 사용하여 권한 설정 변경 후 ssh로 접속한다.
$ chmod 400 spring-server-key.pem
$ ls -al
total 8
drwxr-xr-x 3 hyejinkim staff 96 12 5 17:20 .
drwx------+ 15 hyejinkim staff 480 12 5 17:20 ..
-r--------@ 1 hyejinkim staff 1674 12 5 14:42 spring-server-key.pem
➜ $ ssh -i spring-server-key.pem ubuntu@ec2-3-34-122-10.ap-northeast-2.compute.amazonaws.com
야호
야아호
728x90
'😒 저 저 저 개념없는 나 > 👻 햣햣 Git' 카테고리의 다른 글
[Github] GitHub Actions | 깃허브 액션 (1) | 2024.12.01 |
---|---|
[Git] 기본 명령어 정리 _1 (0) | 2022.03.23 |