debuged python docker client issue

This commit is contained in:
2026-01-18 20:01:23 +01:00
parent fa2d278c79
commit 165d87899d
7 changed files with 111 additions and 166 deletions

View File

@@ -1,15 +1,10 @@
# Lovdata Chat Development Environment
This setup creates a container-per-visitor architecture for the Norwegian legal research chat interface with secure TLS-based Docker communication.
This setup creates a container-per-visitor architecture for the Norwegian legal research chat interface with socket-based Docker communication.
## Quick Start
1. **Generate TLS certificates for secure Docker communication:**
```bash
./generate-certs.sh
```
2. **Set up environment variables:**
1. **Set up environment variables:**
```bash
cp .env.example .env
# Edit .env with your API keys and MCP server URL
@@ -30,14 +25,13 @@ This setup creates a container-per-visitor architecture for the Norwegian legal
## Architecture
- **session-manager**: FastAPI service managing container lifecycles with TLS-secured Docker communication
- **docker-daemon**: Docker-in-Docker daemon with TLS certificates for secure container management
- **session-manager**: FastAPI service managing container lifecycles with socket-based Docker communication
- **lovdata-mcp**: External Norwegian legal research MCP server (configured via MCP_SERVER env var)
- **caddy**: Reverse proxy with dynamic session-based routing
## Security Features
- **TLS-secured Docker communication**: No Docker socket exposure
- **Socket-based Docker communication**: Direct Unix socket access for container management
- **Container isolation**: Each visitor gets dedicated container with resource limits
- **Automatic cleanup**: Sessions expire after 60 minutes of inactivity
- **Resource quotas**: 4GB RAM, 1 CPU core per container, max 3 concurrent sessions
@@ -45,7 +39,7 @@ This setup creates a container-per-visitor architecture for the Norwegian legal
## Development Notes
- Session data persists in ./sessions/ directory
- TLS certificates auto-generated for development
- Docker socket mounted from host for development
- External MCP server configured via environment variables
- Health checks ensure service reliability