This repository contains resources for launching a minecraft server
and a minecraft mods file host via docker, specifically via docker-compose
.
Make sure you've installed docker on your host.
See docker-compose.yaml for the project setup.
- Make/Model: Intel NUC 11 Business Mini PC
- CPU: Intel Core i7-1165G7
- Memory: 64GB RAM
- Storage: 1TB SSD
- OS: Ubuntu 24.04 LTS
- Minecraft client: SKLauncher
- Minecraft version: 1.20.6
- Forge version: 1.20.6
- List of MODS:
- BiomesOPlenty-forge-1.20.6-18.4.0.8.jar
- skinlayers3d-forge-1.6.6-mc1.20.6-all.jar
- journeymap-1.20.6-5.10.0-forge.jar
- TerraBlender-forge-1.20.6-3.5.0.5.jar
- GlitchCore-forge-1.20.6-1.1.0.10.jar
- The list of mods enabled on the server can be found in mods.txt
- Take note of the http paths:
- These match the mods directory structure
- The
minecraft-mods-server
containers serves these up to theminecraft-server
, see docker-compose.yaml
- For the mods to work, you'll need to download them via CurseForge or through some other means (use Google)
- To download the terrablender mod, for example, you'd follow the below steps:
- Navigate to https://www.curseforge.com/minecraft/mc-mods/terrablender
- Click 'View all' next to 'Game Versions'
- Download the version of the mod compatible with minecraft version 1.20.6
- Copy the mod to the mods directory
Note: You will also need to copy these same mods to your minecraft client mods folder.
We'll cover that in the next sections.
- Ensure you have all the mods in place, as per mods.txt
Again, these should be copied to the mods directory - Launch the servers via docker-compose with
docker-compose up -d
- Follow logs
docker-compose logs -f --tail=20
By this point you should already have done the following:
- Downloaded your minecraft client, e.g. SKLauncher
- Downloaded any applicable mods
Upon first launch of your client, your local minecraft profile directory should have been created.
At this point, you should be able to copy your mods to the minecraft profile's mods directory.
- On OSX, this should be
~/Library/Application Support/minecraft/mods
- On Windows, this should be
%APPDATA%\.minecraft\mods
You can create any of these folder's if they don't already exist.
At this point, you should be ready to connect to your minecraft server.
Ensure you login via 'offline mode', as illustrated:
Enter in a username of your choice, as there are no server-side user restrictions in place.
Once you've logged in, you'll need to add an installation and configure it to use forge, as illustrated:
- Click the
+
next to Installations Manager
- From the installation details view, ensure you select Forge version 1.20.6
At this point, you're ready to play and connect!
Follow the illusration below:
The scenarios in the next sections are what I've encountered so far.
Scenario:
- Minecraft server fails to start
- Upon viewing the logs with
docker-compose logs
, you see something similar to the below:
minecraft-server ... Downloading Forge installer 50.1.0 for Minecraft 1.20.6
minecraft-server ... Running Forge 50.1.0 installer for Minecraft 1.20.6. This might take a while...
Possible Cause:
- The server process is unable to write to tis
/data
directory
Troubleshooting Steps:
- Check the container logs for entries similar to
Permission Denied
- If you're using a volume mount for the server's data path, ensure the container has enough permissions to write to it
Scenario:
- Minecraft server fails to start
- Upon viewing the logs with
docker-compose logs
, you see something similar to the below:
minecraft-server ... ERROR : 'mcopy' command failed. Version is 1.39.10
minecraft-server ... me.itzg.helpers.http.FailedRequestException: HTTP request of http://minecraft-mods-server/1.20.6/TerraBlender-forge-1.20.6-3.5.0.5.jar failed with 404 Not Found: Extracting filename
Possible Cause:
- You haven't copied the list of mods referenced in mods.txt to your [mods/1.20.6][mods/1.20.6] directory before starting this
docker-compose
project - The mods file host container does not have sufficient permissions to the directory in which the mods are stored
Troubleshooting Steps:
- Make sure you've downloaded any mods referenced in mods.txt and placed them in the appropriate local directory
- Ensure all containers have enough permissions to write to their respective data directories
Scenario:
Possible Cause:
-
You haven't copied the list of mods referenced in mods.txt to your minecraft profile's mods directory
- On OSX, this should be
~/Library/Application Support/minecraft/mods
- On Windows, this should be
%APPDATA%\.minecraft\mods
- On OSX, this should be
Troubleshooting Steps:
- Make sure you've downloaded any mods referenced in mods.txt and placed them in the minecraft profile's mods directory