Установка Streamlit и Gradio на сервер: коротко и с данными

Конспект страницы: 6 разделов коротко, данные на 14 октября 2026 и ответы на 5 вопросов. Полный разбор с примерами: Установка Streamlit и Gradio на сервер.

Коротко

Главная / Разработка / Streamlit и Gradio Установка Streamlit на сервер занимает две команды: pip install streamlit и streamlit run app.py, после чего приложение отвечает на порту 8501. Чтобы оно работало постоянно и открывалось по домену, его запускают службой systemd или в Docker и ставят перед ним Nginx, который умеет проксировать WebSocket. Gradio размещают так же, меняется порт и адрес.

Конспект по разделам

Установка Streamlit на Ubuntu: venv, pip и первый запуск

Без параметра --server.address Streamlit слушает только локальный адрес сервера, и снаружи он недоступен. Для постоянной работы команду вписывают в ExecStart службы systemd, образец записан на странице хостинг с поддержкой Python.

Streamlit за Nginx: WebSocket, пароль и HTTPS

Streamlit общается с браузером по WebSocket, то есть постоянному двустороннему соединению. Обычный proxy_pass его обрывает, поэтому в блок добавляют заголовки и увеличенный таймаут: Две последние строки включают пароль на уровне Nginx. Файл с логинами создаёт утилита htpasswd из пакета apache2-utils.

Streamlit в Docker: Dockerfile и проверка здоровья

В документации Streamlit проверка здоровья вызывает curl по адресу /_stcore/health. В образе slim curl нет, поэтому выше она сделана средствами Python. Для запуска на VPS публикуйте порт только на локальном адресе: -p 127.0.0.1:8501:8501, а наружу приложение выставляйте через Nginx.

Gradio на сервере: порт 7860, server_name и share

Gradio нужен для интерфейса к модели: поле ввода, кнопка и результат. По умолчанию он слушает порт 7860 и только локальный адрес. Чтобы его было видно снаружи контейнера, вызывают demo.launch(server_name="0.0.0.0", server_port=7860) или задают переменные GRADIO_SERVER_NAME и GRADIO_SERVER_PORT.

Где разместить Streamlit: платформа деплоя или VPS

Для приложения без особых требований подойдёт платформа деплоя из Git: Python-приложения собираются из Dockerfile, как выше, тарифы App Platform от 1 ₽ в месяц на 14 октября 2026. VPS выбирают, когда рядом нужны база данных, файлы или модель в памяти. У самого Streamlit есть облачный сервис для публичных приложений из GitHub, но закрытые данные и постоянная работа лучше чувствуют себя на своём сервере.

Задеплойте приложение из репозитория

Подключите репозиторий, выберите фреймворк или Docker, домен и SSL выдаются сразу.

Вопросы и ответы

Как установить Streamlit на сервер и открыть его из браузера?

Поставить пакет через pip, запустить streamlit run app.py с параметром --server.address 0.0.0.0 и открыть порт 8501. Для постоянной работы лучше поставить Nginx и домен.

Почему Streamlit за Nginx бесконечно показывает Connecting?

Прокси не пропускает WebSocket. Добавьте proxy_http_version 1.1 и заголовки Upgrade и Connection в блок location.

Чем Gradio отличается от Streamlit при размещении на сервере?

Порт 7860 вместо 8501 и запуск через demo.launch с параметром server_name. Прокси, systemd и Docker настраиваются так же.

Как закрыть Streamlit-приложение паролем на сервере?

Проще всего Basic-авторизацией в Nginx. Если нужны личные кабинеты, логин реализуют в самом приложении.

Сколько памяти нужно Streamlit на VPS?

Для приложения на несколько человек без моделей хватит 1-2 ГБ. Большие таблицы pandas и модели в памяти требуют больше, добавляйте под их размер.