name: Deploy FastAPI Application on: push: branches: [ main ] jobs: deploy: runs-on: ubuntu-latest steps: - uses: https://github.com/actions/checkout@v4 - name: Deploy to server uses: https://github.com/appleboy/ssh-action@v1.2.0 with: host: ${{ secrets.SERVER_HOST }} username: ${{ secrets.SERVER_USERNAME }} password: ${{ secrets.PASSWORD }} script: | # Переходим в директорию проекта cd ~/fastapi-app # Получаем последние изменения из git git pull origin main # Собираем новый образ docker-compose build # Перезапускаем сервисы docker-compose up -d # Очищаем неиспользуемые образы docker image prune -f