NetrunНа главную

Как выложить Flask-приложение в интернет

· 4 мин чтения

Обычно, чтобы открыть Flask-приложение наружу, нужно арендовать сервер, поставить на него Python, настроить gunicorn и nginx, выпустить SSL-сертификат и следить, чтобы процесс не падал. Для пет-проекта или первого сайта на Flask это слишком много возни до того, как кто-то вообще увидит результат.

Netrun убирает эту часть: вы загружаете код, платформа сама понимает, что это Python с Flask, собирает проект и выдаёт публичную ссылку с HTTPS. Серверы, сборку и перезапуск берём на себя. Ниже — как подготовить приложение и опубликовать его за несколько минут.

  1. Соберите зависимости в requirements.txt

    Положите рядом с кодом файл requirements.txt со списком библиотек — как минимум Flask и gunicorn. Gunicorn — это рабочий сервер, который держит приложение под нагрузкой, ведь встроенный сервер Flask для интернета не предназначен. Папку с зависимостями (venv) в архив добавлять не нужно — Netrun установит всё сам по списку.

  2. Слушайте порт из переменной окружения

    Не указывайте порт 5000 жёстко в коде. Netrun сам выдаёт приложению нужный порт через переменную окружения PORT, и приложение должно его прочитать — например, port = int(os.environ.get("PORT", 5000)), а само значение брать из этой переменной. Gunicorn при запуске тоже привязывается к этому порту. Если порт захардкожен, ссылка может не открыться.

  3. Уберите ключи и токены из кода

    Секретный ключ Flask, ключи к внешним сервисам и строку подключения к базе данных не оставляйте прямо в файлах. Читайте их из переменных окружения через os.environ — Netrun спросит эти значения при настройке и подставит их в приложение, а в коде они храниться не будут.

  4. Загрузите проект в Netrun

    Зайдите в кабинет и загрузите код: ZIP-архивом или импортом из GitHub-репозитория, в том числе приватного. Платформа сама определит, что это Python с Flask, и подготовит сборку — отдельно указывать язык не нужно.

  5. Укажите секреты и опубликуйте

    На шаге настройки впишите значения, которые приложение ждёт из окружения, — секретный ключ, токены, строку подключения к базе. После этого запустите публикацию. Прогресс сборки и логи видны в кабинете в реальном времени, так что сразу понятно, на каком шаге всё находится.

  6. Проверьте по ссылке

    Когда сборка дойдёт до готового статуса, откройте выданную ссылку — приложение уже работает по HTTPS. Если что-то пойдёт не так, загляните в логи в кабинете, а при сбое Netrun перезапустит проект автоматически.

Готово: ваше Flask-приложение живёт в интернете без аренды сервера, ручного nginx и возни с сертификатами. На бесплатном тарифе один веб-проект засыпает при простое и просыпается по первому запросу — после паузы он будет чуть медленнее открываться. Если приложение должно отвечать мгновенно и быть онлайн постоянно, подойдёт платный тариф с работой без простоев. Попробовать Netrun.