Skip to content
archived Visibility internal Owner erik@uvilo.com Approver _ Created 2026-05-14 Updated 2026-05-15

Container Base Image State 1

Related plan: Container Base Image Plan 1


Plan 1 — Prepare Dual-Image Infrastructure and Build Debian-slim Image ✓ Approved

  • Task 1 — Duplicate the Config folder for the new Debian-slim image
    • Create Forge/Configs-debian/ as a full duplicate of Forge/Configs/ (including MCP_Servers/)
    • Verify original Forge/Configs/ folder is UNCHANGED
    • Verify new image will push to :debian-slim tag (not latest)
  • Task 2 — Update the Debian Dockerfile for Debian-slim
    • Check GHCR for Debian-based LibreChat image variant
    • Update FROM base image in Forge/Configs-debian/Dockerfile.librechat
    • Replace apk commands with apt-get equivalents
    • Add curl, wget, nano to system package install
    • Verify pip install line unchanged
  • Task 3 — Update startup.sh for Debian-slim compatibility
    • Change shebang to #!/bin/bash in Forge/Configs-debian/startup.sh
    • Review all commands for Alpine-specific behavior
    • Verify no apk/apt-get calls in startup script
    • Update comment to reference debian-slim image tag
  • Task 4 — Build and test the Docker image locally
    • Build image from Forge/Configs-debian/Dockerfile.librechat (initial build succeeded)
    • Verify bash, curl, wget, nano, git, python3 available
    • Verify pip packages (mcp, pymongo, dnspython) installed
    • Compare image size with Alpine build (initial: 530MB increase — exceeds R2)
    • Investigate size bloat: node_modules 1.4GB from musl copy + rebuild adds glibc alongside musl
    • Fix Dockerfile: 3-stage build (source → builder with fresh npm install → runtime)
    • Rebuild image and verify size: debian-slim 1.62GB < alpine 2.18GB (560MB DECREASE — R2 passed)
    • Push to :debian-slim tag (NOT :latest)
    • Final verification of all tools and packages
  • Task 5 — Update Forge_Infrastructure.md to document the dual-image setup
    • Add “Dual Image Migration” section
    • Add “Debian-slim Container Notes” section
    • Keep “Alpine Container Constraints” section (still applies to running deployment)