Запуск telegram-бота с помощью uWSGI
У меня есть приложение Django, работающее на nginx+uWSGI.
Внутри моего приложения Django есть бот Telegram (python-telegram-bot). Это бот для длительного опроса, а не для Webhook.
Django часть в полном порядке, мне удалось настроить uWSGI и nginx.
Бот тоже в порядке, пока я запускаю его с:
python bot.py
Но я хочу запустить его с помощью uWSGI (режим императора), и я не могу найти никаких руководств о том, как заставить его работать.
Вот код моего бота (небольшая часть. На самом деле он состоит из десятка команд и использует модели Django):
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "app.settings")
import django
django.setup()
from telegram import InlineKeyboardButton, InlineKeyboardMarkup, Update
from telegram.ext import (
Updater,
CommandHandler,
CallbackContext,
PicklePersistence,
)
from app.secrets import tg_token
def start(update: Update, context: CallbackContext) -> None:
update.message.reply_text('hi')
def main() -> None:
persistence = PicklePersistence(
filename='arbitrarycallbackdatabot.pickle', store_callback_data=True)
# Create the Updater and pass it your bot's token.
updater = Updater(tg_token, persistence=persistence, arbitrary_callback_data=True)
updater.dispatcher.add_handler(CommandHandler('start', start))
# Start the Bot
updater.start_polling()
# Run
updater.idle()
if __name__ == '__main__':
main()
Есть идеи, как настроить uWSGI для одновременного запуска моего приложения Django и bot.py?