---
title: "Как деплоить приложения Flask в сервисе App Platform"
---

# Деплой приложения Flask

> Полный индекс документации для ИИ-агентов: [llms.txt](https://timeweb.cloud/llms.txt).

> [!NOTE]
> Пример Flask-приложения для деплоя можно найти на [Гитхабе](https://github.com/timeweb-cloud-apps/app-example-flask). Также у нас есть [туториал](https://timeweb.cloud/tutorials/cloud/razvertyvanie-proekta-python-flask) по деплою приложения Flask в App Platform.

## Сборка приложения

При сборке приложения используется следующая среда:

-   Python 3.10–3.14 (версия выбирается при создании приложения)
-   pip
-   gunicorn
-   Системные библиотеки для работы с PostgreSQL и MySQL

По умолчанию во время сборки будут выполнены следующие команды:

```shell
apt install -y python3 python3-pip gunicorn python3-psycopg2 libpq-dev python-dev default-mysql-client python3-dev default-libmysqlclient-dev python3-mysqldb --fix-missing
pip3 install psycopg2 flask
ln /usr/bin/python3 /usr/bin/python -sf
ln /usr/bin/pip3 /usr/bin/pip -sf
```

Для установки зависимостей в команду сборки добавьте следующую строку:

```shell
pip3 install --upgrade -r requirements.txt
```

Для корректного деплоя может потребоваться отредактировать команду запуска под ваш проект, задав проброс порта, например: 

```shell
gunicorn main:app --timeout 60 --bind 0.0.0.0:80
```

## Требования к приложению

-   Убедитесь, что основной файл проекта (точка входа в приложение) имеет имя `main.py`.
-   Убедитесь, что приложение слушает `0.0.0.0`, а не `127.0.0.1`, иначе внешние подключения работать не будут.

## Устранение неполадок

### Не удается выполнить развертывание

Если с развертыванием возникают проблемы, в первую очередь проверьте лог деплоя.  
Чаще всего ошибки связаны с:

-   отсутствием файла `main.py` или переменной `app`
-   неправильной командой запуска
-   отсутствием зависимостей в `requirements.txt`

Убедитесь, что команда `gunicorn main:app` успешно запускается в вашей локальной среде.
