chore: improve Docker/Podman compatibility and package installation
Some checks failed
CI/CD Pipeline / Generate Documentation (push) Successful in 4m14s
CI/CD Pipeline / Lint Code (push) Successful in 4m39s
CI/CD Pipeline / Build and Push Docker Images (api) (push) Has been cancelled
CI/CD Pipeline / Build and Push Docker Images (chat) (push) Has been cancelled
CI/CD Pipeline / Build and Push Docker Images (frontend) (push) Has been cancelled
CI/CD Pipeline / Build and Push Docker Images (worker) (push) Has been cancelled
CI/CD Pipeline / Deploy to Staging (push) Has been cancelled
CI/CD Pipeline / Deploy to Production (push) Has been cancelled
CI/CD Pipeline / Security Scanning (push) Has been cancelled
CI/CD Pipeline / Run Tests (push) Has been cancelled

- Update Claude permissions to allow podman-compose commands
- Improve Dockerfile package installation with poetry-core
- Switch to explicit docker.io image references for Podman compatibility
- Add PYTHONPATH configuration to ensure proper module imports
- Change frontend port from 80 to 8080 for non-root compatibility
- Add initial chat server implementation (main.py)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-10-20 02:08:22 +02:00
parent 07c9d3d875
commit 8092e20b2d
6 changed files with 89 additions and 13 deletions

View File

@@ -0,0 +1,59 @@
"""
Chat server stub for development.
TODO: Implement full chat server with WebSocket support.
Currently this is a minimal stub to allow the development environment to start.
"""
import logging
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
# Configure logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
# Create FastAPI app
app = FastAPI(
title="Datacenter Documentation Chat Server",
description="WebSocket-based chat interface for documentation queries (STUB - NOT IMPLEMENTED)",
version="1.0.0",
)
# Configure CORS
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # In production, restrict this
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/health")
async def health_check():
"""Health check endpoint."""
return {"status": "ok", "service": "chat", "implemented": False}
@app.get("/")
async def root():
"""Root endpoint."""
return {
"message": "Chat server stub - not yet implemented",
"status": "stub",
"todo": "Implement WebSocket chat functionality",
}
# TODO: Implement WebSocket endpoint for chat
# @app.websocket("/ws")
# async def websocket_endpoint(websocket: WebSocket):
# await websocket.accept()
# # Implement chat logic here
if __name__ == "__main__":
import uvicorn
logger.info("Starting chat server stub on port 8001...")
uvicorn.run(app, host="0.0.0.0", port=8001)