Merge pull request #13 from PU-Track/main #3
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 Backend Server to EC2 | |
| on: | |
| push: | |
| branches: | |
| - deploy | |
| jobs: | |
| deploy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout source code | |
| uses: actions/checkout@v3 | |
| - name: Set up SSH access | |
| uses: webfactory/ssh-agent@v0.7.0 | |
| with: | |
| ssh-private-key: ${{ secrets.EC2_PRIVATE_KEY }} | |
| - name: Connect to EC2 and deploy | |
| run: | | |
| ssh -o StrictHostKeyChecking=no ${{ secrets.EC2_USER }}@${{ secrets.EC2_HOST }} << 'EOF' | |
| cd ~/server | |
| echo "📥 Pulling latest code..." | |
| git reset --hard HEAD | |
| git clean -fd | |
| git pull origin deploy | |
| echo "🛑 Stopping existing container..." | |
| sudo docker stop putrack-container || true | |
| sudo docker rm putrack-container || true | |
| sudo docker rmi putrack-server || true | |
| echo "🐳 Building new Docker image..." | |
| sudo docker build -t putrack-server . | |
| echo "🚀 Running new container..." | |
| sudo docker run -d --name putrack-container -p 8080:8080 putrack-server | |
| echo "✅ Deployment completed!" | |
| EOF |