- 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
38 lines
No EOL
1.6 KiB
Markdown
38 lines
No EOL
1.6 KiB
Markdown
# Design
|
|
|
|
Take a lot of inspiration from crafty.
|
|
Make creating a modded server as simple as it is using ATLauncher
|
|
|
|
# Philosophy
|
|
KISS = Keep It Simple Stupid
|
|
dont make things over complicated
|
|
|
|
Keep code clean, readable, and concise.
|
|
|
|
Modular
|
|
|
|
# Plans
|
|
This web ui app should be ran in a docker container.
|
|
User authentication, permissions
|
|
simple status page for players to see if the server is up
|
|
|
|
# References
|
|
[itzg docker-minecraft-server](https://github.com/itzg/docker-minecraft-server)
|
|
[itzg docs](https://docker-minecraft-server.readthedocs.io/en/latest/) these docs exist in the main itzg github repo
|
|
[itzg minecraft proxy](https://github.com/itzg/docker-mc-proxy) used to setup proxy servers like velocity and bungee cord
|
|
[itzeg mc-router](https://github.com/itzg/mc-router) used to direct client to the right minecraft proxy or server based on requested server address
|
|
[crafty](https://craftycontrol.com)
|
|
[docker-rcon-web-admin](https://github.com/itzg/docker-rcon-web-admin)
|
|
[setupmc.com](https://setupmc.com/java-server/) Not open source but it's a web ui to generate yml files for docker using the itzg container image
|
|
|
|
|
|
# Maybe useful references
|
|
These are the github repos to other minecraft project that may be useful
|
|
|
|
[pterodactyl](https://github.com/pterodactyl/panel)
|
|
[fork](https://github.com/ForkGG/Fork) This is a Windows based server manager that may have useful ideas.
|
|
[MCSManager](https://github.com/MCSManager/MCSManager)
|
|
|
|
Minecraft launchers for clients. they have tools to download packs and server packs
|
|
[ATLauncher](https://github.com/ATLauncher/ATLauncher)
|
|
[Prism Launcher](https://github.com/PrismLauncher/PrismLauncher) |