[FIX] 백 테스트용 리다이렉트 주소 변경 #64
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Deploy to EC2(Docker) | |
| on: | |
| push: | |
| branches: | |
| - develop | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout source code | |
| uses: actions/checkout@v2 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v2 | |
| with: | |
| node-version: '18' | |
| - name: Install dependencies | |
| run: npm install | |
| - name: Build server files | |
| run: npm run build | |
| - name: Create .env file | |
| run: | | |
| touch .env | |
| echo ENV=${{ secrets.ENV }} > .env | |
| cat .env | |
| - name: Docker login | |
| run: echo "${{ secrets.DOCKERHUB_TOKEN }}" | docker login -u "${{ secrets.DOCKERHUB_USERNAME }}" --password-stdin | |
| - name: Docker build and push | |
| run: | | |
| docker build -t artne . | |
| docker tag artne hysong4u/artne:latest | |
| docker push hysong4u/artne:latest | |
| - name: Deploy to EC2 | |
| env: | |
| PRIVATE_KEY: ${{ secrets.EC2_SSH_PRIVATE_KEY }} | |
| SERVER_ADDRESS: ${{ secrets.EC2_PUBLIC_IP }} | |
| run: | | |
| echo "$PRIVATE_KEY" > private_key.pem | |
| chmod 600 private_key.pem | |
| ssh -T -o StrictHostKeyChecking=no -i private_key.pem ubuntu@$SERVER_ADDRESS << 'EOF' | |
| # Grant necessary permissions for Docker | |
| sudo chmod 660 /var/run/docker.sock | |
| sudo usermod -aG docker $USER | |
| sudo usermod -aG docker ubuntu | |
| # .env 파일 로그로 출력 | |
| echo ".env 파일 내용:" | |
| cat /home/ubuntu/.env | |
| # Docker 이미지 Pull 및 실행 | |
| sudo docker pull hysong4u/artne:latest | |
| existing_container_id=$(sudo docker ps -q --filter "publish=5000") | |
| if [ -n "$existing_container_id" ]; then | |
| sudo docker stop $existing_container_id | |
| sudo docker rm $existing_container_id | |
| fi | |
| sudo docker image prune -f | |
| cat /home/ubuntu/.env | |
| sudo docker run -d -p 5000:5000 --env-file /home/ubuntu/.env hysong4u/artne:latest | |
| EOF |