Skip to content

a-irch/adMINE

Repository files navigation

F1Metrics Logo

adMINE

Overview

adMINE is a lightweight, modern, and powerful web interface to manage your Minecraft Java Edition servers.

Whether you're hosting a small private server or managing multiple production instances, adMINE makes everything simple, stable, and enjoyable.

Features

  • Multi-Instance Management — Create, start, stop, and delete as many Minecraft server instances as you want.
  • Version Manager — Automatically downloads and installs all official Minecraft versions from Mojang’s manifest.
  • Live Console — Real-time logs, command input, and instant feedback.
  • System Monitoring — CPU, RAM, and Disk usage charts.
  • Player Management — Kick / Ban / Unban, OP management, live online list, IP bans, username bans.
  • Users & Roles — Admin / Operator roles, user creation, deletion, password reset.
  • Security — JWT tokens, hashed passwords (bcrypt), secure middleware.
  • Structured forms for configuration editing — no more broken text files.

Getting Started

adMINE can run in 3 different ways, depending on your needs.

1 - All-in-One Docker Image (Recommended)

This is the easiest installation, one lightweight Alpine-based container :

docker run -d \
    --name admine \
    -p 8080:80 \
    -p 25565:25565 \
    -v admine_data:/adMINE/data \
    -e JWT_SECRET="change_this_secret" \
    -e JWT_REFRESH_SECRET="change_this_secret_too" \
    aaairch/admine:0.1

2 - Splitted docker setup

For advanced or scalable environments :

  1. Clone the repository:
git clone https://github.com/yourusername/admine.git
cd admine
  1. Edit environment secret in docker-compose.yml
  2. Start the multi-container environment:
docker compose up -d --build

3 - Development Setup

If you want to contribute to the code.

Requirements :

  • Node.js v22+
  • Java 21 (JRE or JDK)
  • npm 10.9+

Steps :

  1. Clone the repository:
git clone https://github.com/yourusername/admine.git
cd admine
  1. Install dependencies:
npm install
  1. Initialize the database:
npm run init
  1. Start the development servers:
npm run dev

Port mapping :

  • API → 3000
  • Web UI → 5173
  • Minecraft server → 25565

Default Credentials

On the very first launch, adMINE creates a default admin account:

Field Value
Username admine
Password changeme

You will be required to change this password immediately after logging in.

Contributing

Pull requests are welcome! If you have new ideas, improvements, or bug reports, feel free to open an issue.

License

This project is licensed under the MIT License with Commons Clause Restriction.
Commercial use is not permitted.
See the LICENSE file for details.

About

Web GUI for Minecraft server deployment and administration.

Topics

Resources

License

Stars

Watchers

Forks

Contributors