mirror of
https://github.com/itzg/docker-minecraft-server.git
synced 2026-02-17 07:03:57 +00:00
Add support for Cleanroom (Forge fork) installer (#3291)
This commit is contained in:
@@ -50,7 +50,7 @@ RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
||||
--var version=${MC_SERVER_RUNNER_VERSION} --var app=mc-server-runner --file {{.app}} \
|
||||
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
||||
|
||||
ARG MC_HELPER_VERSION=1.40.11
|
||||
ARG MC_HELPER_VERSION=1.40.12
|
||||
ARG MC_HELPER_BASE_URL=${GITHUB_BASEURL}/itzg/mc-image-helper/releases/download/${MC_HELPER_VERSION}
|
||||
# used for cache busting local copy of mc-image-helper
|
||||
ARG MC_HELPER_REV=1
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
A [Forge server](http://www.minecraftforge.net/) can be automatically downloaded, upgraded, and run by setting the environment variable `TYPE` to "FORGE".
|
||||
|
||||
!!! note "A note from the installer"
|
||||
|
||||
> Please do not automate the download and installation of Forge.
|
||||
Our efforts are supported by ads from the download page.
|
||||
If you MUST automate this, please consider supporting the project through <https://www.patreon.com/LexManos/>
|
||||
|
||||
Since my project also relies on donations, please pass it along and consider contributing to the Patreon above.
|
||||
|
||||
!!! example
|
||||
|
||||
```
|
||||
@@ -14,6 +22,7 @@ A [Forge server](http://www.minecraftforge.net/) can be automatically downloaded
|
||||
|
||||
The overall version is specified by `VERSION`, [as described in the section above](../../versions/minecraft.md) and provides the same benefits of upgrading as new versions are released. By default, the recommended version of Forge for that Minecraft version will be selected. The latest version can be selected instead by setting the environment variable `FORGE_VERSION` to "latest". You can also choose a specific Forge version by setting `FORGE_VERSION` with that version, such as "14.23.5.2854".
|
||||
|
||||
|
||||
!!! example
|
||||
|
||||
```
|
||||
@@ -55,3 +64,22 @@ Support for [NeoForge](https://neoforged.net/) is also provided. A NeoForge serv
|
||||
VERSION: "1.20.4"
|
||||
NEOFORGE_VERSION: "beta"
|
||||
```
|
||||
|
||||
### Cleanroom
|
||||
|
||||
[Cleanroom](https://github.com/CleanroomMC/Cleanroom) isn't fully automated, but can be utilized by...
|
||||
|
||||
1. choose the desired release at https://github.com/CleanroomMC/Cleanroom/releases
|
||||
2. grab the link to the `*-installer.jar` file in that release
|
||||
3. with `TYPE` set to "FORGE", set `FORGE_INSTALLER_URL` to the installer jar's link
|
||||
|
||||
!!! example
|
||||
|
||||
In docker compose `environment`
|
||||
|
||||
```yaml
|
||||
TYPE: FORGE
|
||||
FORGE_INSTALLER_URL: https://github.com/CleanroomMC/Cleanroom/releases/download/0.2.4-alpha/cleanroom-0.2.4-alpha-installer.jar
|
||||
```
|
||||
|
||||
[Full example](https://github.com/itzg/docker-minecraft-server/tree/master/examples/cleanroom)
|
||||
15
examples/cleanroom/compose.yml
Normal file
15
examples/cleanroom/compose.yml
Normal file
@@ -0,0 +1,15 @@
|
||||
# Provides an example of running CleanroomMC from https://github.com/CleanroomMC/Cleanroom,
|
||||
# which is a Forge fork
|
||||
services:
|
||||
mc:
|
||||
image: itzg/minecraft-server
|
||||
environment:
|
||||
EULA: true
|
||||
TYPE: FORGE
|
||||
FORGE_INSTALLER_URL: https://github.com/CleanroomMC/Cleanroom/releases/download/0.2.4-alpha/cleanroom-0.2.4-alpha-installer.jar
|
||||
ports:
|
||||
- "25565:25565"
|
||||
volumes:
|
||||
- mc-data:/data
|
||||
volumes:
|
||||
mc-data:
|
||||
@@ -21,6 +21,20 @@ if [[ ${FORGE_INSTALLER} ]]; then
|
||||
logError "Failed to installForge given installer ${FORGE_INSTALLER}"
|
||||
exit 1
|
||||
fi
|
||||
elif [[ ${FORGE_INSTALLER_URL:-} ]]; then
|
||||
mkdir -p tmp
|
||||
if ! installer=$(get -o tmp --output-filename "${FORGE_INSTALLER_URL}"); then
|
||||
logError "Failed to download installer from $FORGE_INSTALLER_URL"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2064
|
||||
trap "rm $installer" EXIT
|
||||
|
||||
if ! mc-image-helper-forge --forge-installer="${installer}" ; then
|
||||
logError "Failed to install forge from ${FORGE_INSTALLER_URL}"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if ! mc-image-helper-forge --forge-version="${FORGE_VERSION}"; then
|
||||
logError "Failed to install Forge"
|
||||
|
||||
Reference in New Issue
Block a user