Opencurro / app.py
Wiuhh's picture
Create app.py
594aa49 verified
Raw
History Blame Contribute Delete
1.7 kB
#!/usr/bin/env python3
"""
Simple app.py that runs the Docker container for OpenCurro Backend
on Hugging Face Spaces
"""
import subprocess
import sys
import time
DOCKER_IMAGE_NAME = "opencurro-backend"
DOCKER_CONTAINER_NAME = "opencurro-backend-container"
def run_docker():
"""Build and run Docker container"""
try:
print("🐳 Building Docker image...")
# Build Docker image
build_cmd = [
"docker", "build",
"-f", "Dockerfile.hf-backend",
"-t", DOCKER_IMAGE_NAME,
"."
]
result = subprocess.run(build_cmd, check=True)
print("βœ… Docker image built successfully")
# Remove old container if exists
try:
subprocess.run(
["docker", "rm", "-f", DOCKER_CONTAINER_NAME],
capture_output=True
)
except:
pass
# Run Docker container
print("πŸš€ Starting Docker container...")
run_cmd = [
"docker", "run",
"--name", DOCKER_CONTAINER_NAME,
"-p", "8000:8000",
DOCKER_IMAGE_NAME
]
subprocess.run(run_cmd, check=True)
except subprocess.CalledProcessError as e:
print(f"❌ Error: {e}")
sys.exit(1)
except KeyboardInterrupt:
print("\nπŸ›‘ Shutting down...")
subprocess.run(["docker", "stop", DOCKER_CONTAINER_NAME], capture_output=True)
subprocess.run(["docker", "rm", DOCKER_CONTAINER_NAME], capture_output=True)
if __name__ == "__main__":
print("🎯 OpenCurro AI Backend - Docker Runner")
print("=" * 50)
run_docker()