No description
Find a file
robojerk c31e48e2b1 Proof of concept: Container management with FastAPI backend
- FastAPI backend with REST API endpoints
- SQLite database for container metadata
- Docker/Podman SDK integration with label filtering
- Frontend: Server creation form and management page
- Container operations: create, list, start, stop, delete
- Single container deployment (nginx + Python + supervisor)
- Support for Docker and Podman (rootless)
- Volume management for persistent data
2025-10-31 11:50:31 -07:00
backend Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
references Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
.dockerignore Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
.gitignore Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
design.md Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
docker-compose Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
docker-compose.yml Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
Dockerfile Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
index.html Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
manage.html Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00
README.md Proof of concept: Container management with FastAPI backend 2025-10-31 11:50:31 -07:00

Stronghold

A web ui to manage minecraft server using the itzg docker container https://github.com/itzg/docker-minecraft-server

Also manage proxy servers like velocity, bungeecord

Development

See design.md for design notes

Quick Start (Proof of Concept)

Stronghold is a web UI for managing Minecraft servers using Docker/Podman containers.

Running the POC

Using Docker Compose (Docker users)

docker-compose up -d --build

Using Podman Compose (Podman users)

podman-compose up -d --build

Note: The container needs access to your Docker/Podman socket to manage containers. The compose file mounts:

  • /var/run/docker.sock (Docker)
  • /run/podman/podman.sock (Podman)

Then open http://localhost:8080 in your browser.

Features

Current POC Features:

  • Generate docker-compose.yml files
  • Create Minecraft server containers directly
  • List and manage containers
  • Start/Stop/Delete containers
  • Support for Docker and Podman
  • SQLite database for container metadata
  • Multiple server types (Vanilla, Paper, Forge, Fabric, etc.)
  • Modpack support (CurseForge, Modrinth, URL, Local)
  • Advanced configuration options

Pages:

  • / (index.html) - Create new servers
  • /manage.html - Manage existing servers

Architecture

  • Frontend: Static HTML/CSS/JavaScript
  • Backend: Python FastAPI
  • Database: SQLite (stored in ./data/stronghold.db)
  • Container Engine: Docker SDK (works with both Docker and Podman)

All containers created by Stronghold are labeled with stronghold.managed=true to isolate them from other containers.