feat: Set up application configuration using pydantic-settings and .env files.

This commit is contained in:
Bruno Charest 2026-03-13 10:30:40 -04:00
parent 05b44a5404
commit 071461dc82
4 changed files with 19 additions and 4 deletions

View File

@ -26,15 +26,27 @@ LABEL maintainer="Bruno Charest <bruno@dracodev.net>"
LABEL description="🦊 Foxy Dev Team — Multi-Agent Orchestration System"
LABEL version="2.0.0"
# System deps
# System deps (CLI tools, Node.js, Git)
RUN apt-get update && apt-get install -y --no-install-recommends \
curl \
git \
ca-certificates \
gnupg \
&& mkdir -p /etc/apt/keyrings \
&& curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg \
&& echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list \
&& apt-get update && apt-get install -y nodejs \
&& npm install -g openclaw@latest \
&& rm -rf /var/lib/apt/lists/*
# Create non-root user
RUN useradd --create-home --shell /bin/bash foxy
WORKDIR /app
RUN chown foxy:foxy /app
# Setup OpenClaw environment within the container
RUN mkdir -p /home/foxy/.openclaw/workspace /home/foxy/.openclaw/logs \
&& chown -R foxy:foxy /home/foxy/.openclaw \
&& chown foxy:foxy /app
# Python dependencies
COPY --chown=foxy:foxy backend/requirements.txt ./

View File

@ -6,7 +6,7 @@ TELEGRAM_BOT_TOKEN=your-telegram-bot-token
TELEGRAM_CHAT_ID=your-chat-id
# ─── OpenClaw ──────────────────────────────────────────────
OPENCLAW_WORKSPACE=/home/openclaw/.openclaw/workspace
OPENCLAW_WORKSPACE=/home/foxy/.openclaw/workspace
# ─── Gitea ─────────────────────────────────────────────────
GITEA_SERVER=https://gitea.your.server

View File

@ -16,7 +16,7 @@ class Settings(BaseSettings):
TELEGRAM_CHAT_ID: str = ""
# OpenClaw
OPENCLAW_WORKSPACE: str = "/home/openclaw/.openclaw/workspace"
OPENCLAW_WORKSPACE: str = "/home/foxy/.openclaw/workspace"
# Gitea
GITEA_SERVER: str = ""

View File

@ -24,6 +24,7 @@ services:
- backend/.env
volumes:
- foxy-data:/app/data
- foxy-workspace:/home/foxy/.openclaw/workspace
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:7000/api/health"]
interval: 30s
@ -59,6 +60,8 @@ services:
volumes:
foxy-data:
driver: local
foxy-workspace:
driver: local
networks:
foxy-net: