Как развернуть бота с нуля на новом сервере.
1. Скопировать код на сервер:
rsync -avz --exclude ".git" --exclude "data" ./shitcoders_club/ root@SERVER_IP:/root/shitcoders_club/
2. Установить зависимости:
cd /root/shitcoders_club && pip install -r requirements.txt
3. Настроить .env (файл в корне проекта):
4. Разрешить порт 8002 в firewall (если есть):
ufw allow 8002
5. Запустить:
systemctl restart shitcoders-club
Файл: /etc/systemd/system/shitcoders-club.service
[Unit] Description=ShitCoders Club Bot After=network.target
[Service] Type=simple User=root WorkingDirectory=/root/shitcoders_club ExecStart=/usr/bin/python3 /root/shitcoders_club/bot.py Restart=always RestartSec=5 Environment=PYTHONUNBUFFERED=1
[Install] WantedBy=multi-user.target
Бот запускает вебхук-сервер на порту 8002 (FastAPI) в отдельном потоке. В админке Prodamus нужно указать URL уведомлений (адрес сервера + порт 8002 + /webhook/prodamus).
Вебхук обрабатывает:
1. Изменить код локально 2. Скопировать на сервер: rsync -avz ./shitcoders_club/ root@SERVER_IP:/root/shitcoders_club/ 3. Перезапустить: systemctl restart shitcoders-club 4. Проверить логи: journalctl -u shitcoders-club -n 20 –no-pager