| |
| """ |
| Simple test app to verify Docker build is working |
| """ |
|
|
| import gradio as gr |
| import os |
| import sys |
| from datetime import datetime |
|
|
| def test_basic_functionality(): |
| """Test basic Python functionality""" |
| return f"β
Docker container is working! Python {sys.version}, Time: {datetime.now()}" |
|
|
| def test_imports(): |
| """Test if key imports work""" |
| results = [] |
| |
| |
| try: |
| import pydantic |
| results.append(f"β
pydantic {pydantic.VERSION} imported successfully") |
| except Exception as e: |
| results.append(f"β pydantic import failed: {e}") |
| |
| try: |
| import gradio |
| results.append(f"β
gradio {gradio.__version__} imported successfully") |
| except Exception as e: |
| results.append(f"β gradio import failed: {e}") |
| |
| try: |
| import urllib3 |
| results.append(f"β
urllib3 {urllib3.__version__} imported successfully") |
| except Exception as e: |
| results.append(f"β urllib3 import failed: {e}") |
| |
| try: |
| import os |
| results.append(f"β
Python os module works") |
| results.append(f"β
Working directory: {os.getcwd()}") |
| except Exception as e: |
| results.append(f"β OS operations failed: {e}") |
| |
| return "\n".join(results) |
|
|
| |
| with gr.Blocks(title="Docker Test") as demo: |
| gr.Markdown("# π§ Docker Container Test") |
| |
| with gr.Row(): |
| test_btn = gr.Button("Test Basic Functionality") |
| basic_output = gr.Textbox(label="Basic Test Output") |
| |
| with gr.Row(): |
| import_btn = gr.Button("Test Imports") |
| import_output = gr.Textbox(label="Import Test Output", lines=10) |
| |
| test_btn.click(test_basic_functionality, outputs=basic_output) |
| import_btn.click(test_imports, outputs=import_output) |
|
|
| if __name__ == "__main__": |
| print("=== DOCKER CONTAINER TEST ===") |
| print(f"Python version: {sys.version}") |
| print(f"Current time: {datetime.now()}") |
| print(f"Environment: Docker container") |
| |
| |
| demo.launch( |
| server_name="0.0.0.0", |
| server_port=7860, |
| show_error=True |
| ) |