60 lines
2.1 KiB
Python
60 lines
2.1 KiB
Python
#!/usr/bin/env python3
|
||
"""
|
||
Запуск Streamlit интерфейса локально из изолированного пакета
|
||
"""
|
||
|
||
import subprocess
|
||
import sys
|
||
import webbrowser
|
||
import os
|
||
|
||
def main():
|
||
"""Основная функция"""
|
||
print("🚀 ЗАПУСК STREAMLIT ИЗ ИЗОЛИРОВАННОГО ПАКЕТА")
|
||
print("=" * 60)
|
||
print("Убедитесь, что FastAPI сервер запущен на порту 8000")
|
||
print("=" * 60)
|
||
|
||
# Проверяем, существует ли папка streamlit_app
|
||
if not os.path.exists("streamlit_app"):
|
||
print("❌ Папка streamlit_app не найдена")
|
||
print("Создайте изолированный пакет или используйте docker-compose up -d")
|
||
return
|
||
|
||
# Переходим в папку streamlit_app
|
||
os.chdir("streamlit_app")
|
||
|
||
# Проверяем, установлен ли Streamlit
|
||
try:
|
||
import streamlit
|
||
print(f"✅ Streamlit {streamlit.__version__} установлен")
|
||
except ImportError:
|
||
print("❌ Streamlit не установлен")
|
||
print("Установите: pip install -r requirements.txt")
|
||
return
|
||
|
||
print("\n🚀 Запускаю Streamlit...")
|
||
print("📍 URL: http://localhost:8501")
|
||
print("🛑 Для остановки нажмите Ctrl+C")
|
||
|
||
# Открываем браузер
|
||
try:
|
||
webbrowser.open("http://localhost:8501")
|
||
print("✅ Браузер открыт")
|
||
except Exception as e:
|
||
print(f"⚠️ Не удалось открыть браузер: {e}")
|
||
|
||
# Запускаем Streamlit
|
||
try:
|
||
subprocess.run([
|
||
sys.executable, "-m", "streamlit", "run", "app.py",
|
||
"--server.port", "8501",
|
||
"--server.address", "localhost",
|
||
"--server.headless", "false",
|
||
"--browser.gatherUsageStats", "false"
|
||
])
|
||
except KeyboardInterrupt:
|
||
print("\n👋 Streamlit остановлен")
|
||
|
||
if __name__ == "__main__":
|
||
main() |