Skip to content

refector(#1) : CI/CD 초기설정 #29

refector(#1) : CI/CD 초기설정

refector(#1) : CI/CD 초기설정 #29

Workflow file for this run

name: ma6-main-back
on:
push:
branches:
- develop
paths-ignore:
- 'README.md'
- 'LICENSE'
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Build Docker image
run: docker build --platform linux/amd64 -t ${{ secrets.DOCKER_IMAGE_NAME }}:${{ github.sha }} .
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: Push Docker image
run: docker push ${{ secrets.DOCKER_IMAGE_NAME }}:${{ github.sha }}
deploy:
needs: build
runs-on: self-hosted # runner로 ec2 연결
steps:
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: Docker run
run: |
docker pull ${{ secrets.DOCKER_IMAGE_NAME }}:${{ github.sha }}
docker-compose down
docker-compose up --force-recreate --build -d