4.8.5: Исправление деплоя на Synology
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 1m11s
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 1m11s
This commit is contained in:
@@ -101,28 +101,55 @@ jobs:
|
||||
password: ${{ secrets.DEPLOY_PASSWORD }}
|
||||
script: |
|
||||
set -e
|
||||
|
||||
# Расширяем PATH для Synology (при SSH сессии PATH минимальный)
|
||||
export PATH="/usr/local/bin:/usr/syno/bin:$PATH"
|
||||
|
||||
REGISTRY="dungeonsiege.synology.me/poignatov/play-life"
|
||||
DEPLOY_PATH="/volume1/docker/play-life"
|
||||
|
||||
echo "🚀 Начинаю деплой на production сервер..."
|
||||
echo "PATH: $PATH"
|
||||
|
||||
# Проверяем наличие docker
|
||||
if ! command -v docker >/dev/null 2>&1; then
|
||||
echo "❌ Docker не найден в PATH!"
|
||||
echo "Пробуем найти docker..."
|
||||
which docker || find /usr -name "docker" -type f 2>/dev/null | head -5
|
||||
exit 1
|
||||
fi
|
||||
|
||||
DOCKER_CMD="docker"
|
||||
|
||||
# Определяем docker-compose (может быть docker compose или docker-compose)
|
||||
if command -v docker-compose >/dev/null 2>&1; then
|
||||
DOCKER_COMPOSE_CMD="docker-compose"
|
||||
elif docker compose version >/dev/null 2>&1; then
|
||||
DOCKER_COMPOSE_CMD="docker compose"
|
||||
else
|
||||
echo "❌ Docker Compose не найден!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Используем: $DOCKER_CMD и $DOCKER_COMPOSE_CMD"
|
||||
|
||||
# Переходим в директорию проекта
|
||||
cd $DEPLOY_PATH
|
||||
|
||||
# Логинимся в registry
|
||||
echo "${{ secrets.GIT_TOKEN }}" | docker login dungeonsiege.synology.me -u ${{ secrets.GIT_USERNAME }} --password-stdin
|
||||
echo "${{ secrets.GIT_TOKEN }}" | $DOCKER_CMD login dungeonsiege.synology.me -u ${{ secrets.GIT_USERNAME }} --password-stdin
|
||||
|
||||
# Обновляем образ
|
||||
echo "📥 Обновляю образ из registry..."
|
||||
docker pull $REGISTRY:latest
|
||||
$DOCKER_CMD pull $REGISTRY:latest
|
||||
|
||||
# Перезапускаем контейнеры
|
||||
echo "🔄 Перезапускаю контейнеры..."
|
||||
docker-compose -f docker-compose.prod.yml up -d --force-recreate
|
||||
$DOCKER_COMPOSE_CMD -f docker-compose.prod.yml up -d --force-recreate
|
||||
|
||||
# Проверяем статус
|
||||
echo "✅ Деплой завершен успешно"
|
||||
docker-compose -f docker-compose.prod.yml ps
|
||||
$DOCKER_COMPOSE_CMD -f docker-compose.prod.yml ps
|
||||
|
||||
- name: Send Telegram notification (publish success)
|
||||
if: success() && steps.version_check.outputs.changed == 'true'
|
||||
|
||||
Reference in New Issue
Block a user