Skip to content

Moving to nginx

Moving to nginx #88

Workflow file for this run

name: Build and Deploy Docker Image for React App with Nginx
on:
push:
branches:
- main
jobs:
build:
name: Build, Push, and Deploy
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Login to Docker Hub
run: |
echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
- name: Build Docker Image
run: |
docker build . -f Dockerfile -t ${{ secrets.DOCKER_USERNAME }}/webportfolio:latest
- name: Push Docker Image to Docker Hub
run: |
docker push ${{ secrets.DOCKER_USERNAME }}/webportfolio:latest
- name: Set up SSH key
uses: webfactory/ssh-agent@v0.5.3
with:
ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}
- name: Deploy to Server
uses: appleboy/ssh-action@v0.1.8
with:
host: ${{ secrets.VPS_HOST }}
username: ${{ secrets.VPS_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
script: |
sudo docker pull ${{ secrets.DOCKER_USERNAME }}/webportfolio:latest
sudo docker stop webportfolio || true
sudo docker rm webportfolio || true
sudo docker run -d -p 80:80 --name webportfolio ${{ secrets.DOCKER_USERNAME }}/webportfolio:latest
sudo docker system prune -af