Skip to content

Merge pull request #153 from vecosystem/Fix/#152-깃허브-설치-id-조회-오류-수정 #81

Merge pull request #153 from vecosystem/Fix/#152-깃허브-설치-id-조회-오류-수정

Merge pull request #153 from vecosystem/Fix/#152-깃허브-설치-id-조회-오류-수정 #81

Workflow file for this run

# 도커 O
name: CI/CD PipeLine (Develop)
on:
push:
branches: [ "develop" ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: develop 체크아웃
uses: actions/checkout@v4 # 체크아웃
- name: 자바 설정 # Java 개발 킷 설정
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '21'
- name: application.yml 추가
run: |
mkdir -p src/main/resources
echo "${{ secrets.APPLICATION_YML_DEV }}" > src/main/resources/application.yml
shell: bash
- name: 깃허브 Private Key 추가
run: |
mkdir -p src/main/resources
echo "${{ secrets.PRIVATE_KEY_GITHUB }}" > src/main/resources/private-key.pem
shell: bash
- name: gradlew 실행 권한 부여
run: chmod +x gradlew
- name: gradle 세팅
uses: gradle/actions/setup-gradle@v4
- name: gradle 빌드
run: ./gradlew clean build -x test
- name: Docker Hub 로그인
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME_DEV }}
password: ${{ secrets.DOCKER_TOKEN_DEV }}
- name: Docker 이미지 빌드
run: docker build -t ${{ secrets.DOCKER_USERNAME_DEV }}/${{ secrets.DOCKER_IMAGENAME_DEV }} .
- name: docker 이미지 push
run: docker push ${{ secrets.DOCKER_USERNAME_DEV }}/${{ secrets.DOCKER_IMAGENAME_DEV }}
deploy:
needs: build
runs-on: ubuntu-latest
steps:
- name: EC2에 Docker Image 배포
uses: appleboy/ssh-action@v0.1.6
with:
host: ${{ secrets.EC2_HOST_DEV }}
username: ${{ secrets.EC2_USERNAME }}
key: ${{ secrets.EC2_SSH_KEY_DEV }}
port: 22
timeout: 60s
script: |
sudo docker stop ${{ secrets.DOCKER_IMAGENAME_DEV }}
sudo docker rm ${{ secrets.DOCKER_IMAGENAME_DEV }}
sudo docker pull ${{ secrets.DOCKER_USERNAME_DEV }}/${{ secrets.DOCKER_IMAGENAME_DEV }}
sudo docker run -it -d --network host --name ${{ secrets.DOCKER_IMAGENAME_DEV }} -e TZ=Asia/Seoul ${{ secrets.DOCKER_USERNAME_DEV }}/${{ secrets.DOCKER_IMAGENAME_DEV }}