chore: add deploy.sh for server

This commit is contained in:
loki5512344 2026-08-06 17:49:55 +02:00
parent ce1d863009
commit 10acbc5ecb
Signed by: boba
GPG key ID: 253067914055423B

View file

@ -1,40 +1,19 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -euo pipefail set -euo pipefail
# ========================================= cd /opt/loki-bot
# Loki Discord Bot — VPS Deploy Script
# Запускать на VPS после git clone
# =========================================
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" echo "=== 1. git pull ==="
cd "$SCRIPT_DIR" git pull origin main
echo "=== 1. Проверка Docker ===" echo "=== 2. docker compose up --build -d ==="
command -v docker >/dev/null 2>&1 || { echo "Docker не установлен"; exit 1; }
command -v docker compose >/dev/null 2>&1 || { echo "docker compose не найден"; exit 1; }
echo "=== 2. Создание .env из .env.example ==="
if [ ! -f .env ]; then
cp .env.example .env
echo "Файл .env создан. ОТРЕДАКТИРУЙ ЕГО ПЕРЕД ЗАПУСКОМ!"
echo "Заполни токены в .env и запусти скрипт снова."
exit 0
fi
echo "=== 3. Создание необходимых директорий ==="
mkdir -p data/prompts data/knowledge lavalink/plugins logs
echo "=== 4. Проверка Lavalink плагинов ==="
if [ -z "$(ls -A lavalink/plugins 2>/dev/null)" ]; then
echo "ВНИМАНИЕ: lavalink/plugins пуста."
echo "Скачай плагины вручную если нужно (youtube-plugin, lavasrc-plugin)."
fi
echo "=== 5. Сборка и запуск ==="
docker compose up --build -d docker compose up --build -d
echo "=== 3. Waiting for health check ==="
sleep 15
echo "=== 4. Status ==="
docker ps --format 'table {{.Names}}\t{{.Status}}'
echo "" echo ""
echo "=== Готово! ===" echo "=== Done! ==="
echo " docker compose logs -f — логи"
echo " docker compose down — остановить"
echo " docker compose restart — перезапустить"