- JavaScript 89.1%
- Dockerfile 10.9%
| scripts | ||
| .gitignore | ||
| constants.js | ||
| docker-compose.yml | ||
| Dockerfile | ||
| package.json | ||
| README.md | ||
Harbour
A simple docker setup for Minecraft servers
Harbour is designed to support not only the official runtime, but also alternative ones such as Forge and Fabric, making it flexible for modded server setups.
Installing
To set up Harbour from scratch, run the following command:
npm run initial-setup
If you're using pnpm, the equivalent command is:
pnpm run initial-setup
This will create the necessary directories for your base installation and regenerate configuration files like mods.json and runtime.json.
Running Harbour
To run Harbour on a docker environment, please run the following command:
docker-compose up --build -d
Configuration files
runtime.json
This folder contains the URL from which the server should download the executable .jar file. The URL must point to a valid .jar file and be accessible via a standard HTTP request.
For the vanilla version, you can obtain this URL from Minecraft's official server download page. If you're using Fabric, use the URL from Fabric’s server download page.
mods.json
This section lists all the mods. Harbour automatically downloads each one from its specified source and places it in the mods folder—no manual action required.
For a mod entry to work correctly, it should include the following properties:
{
"name": "Lithium", // Name of the mod
"version": "0.11.2", // Version of the mod
"gameVersion": "1.20.1", // Version of the game
"url": "https://cdn.modrinth.com/data/gvQqBUqZ/versions/ZSNsJrPI/lithium-fabric-mc1.20.1-0.11.2.jar" // URL containing the .jar file
}
Most of these properties are optional and serve primarily as additional information. As long as you provide a valid URL, the other fields can be left empty. However, including the three additional fields significantly improves the maintenance experience during upgrades.
If no mods are needed, simply use an empty array—that’s all you need.