May 25, 2024
Деплой React-приложения на сервер через GitHub Actions
1. Создаем в корне проекта директорию .github/workflows и файл deploy.yml
# deploy.yml
name: Deploy to Server
run-name: User ${{ github.actor }} is deploying to server
on:
push:
branches:
- main
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 20
- name: Install dependencies
run: npm install
- name: Build React App
run: npm run build
- name: Deploy to Server
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.SERVER_SSH_KEY }}
port: ${{ secrets.SERVER_PORT }}
script: |
rm -rf /var/www/project-name/*
cp -r ./build/* /var/www/project-name/2. Перейдем в настройки репозитория на GitHub (Settings - Secrets and variables - Actions) и добавим следующие секреты: