No description
Find a file
robojerk 8d2def360e Extract YAML validation to separate module
- Created yaml-validator.js with pure validation functions
- Removed redundant checkYAMLFormatting function (rely on js-yaml)
- Fixed function shadowing issues by using window._validateYAMLPure
- Updated nginx config to serve JS files with correct MIME type
- Improved error reporting with line/column numbers from js-yaml
2025-10-31 13:28:38 -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 Extract YAML validation to separate module 2025-10-31 13:28:38 -07:00
Dockerfile Extract YAML validation to separate module 2025-10-31 13:28:38 -07:00
index.html Extract YAML validation to separate module 2025-10-31 13:28:38 -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
yaml-validator.js Extract YAML validation to separate module 2025-10-31 13:28:38 -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.