Compare commits

...

70 Commits

Author SHA1 Message Date
Geoff Bourne
c0fc0d0d2c Auto-merging via docker-versions-create 2021-08-30 21:40:49 -05:00
Geoff Bourne
179cd878a9 Added error check on download of GENERIC_PACK
#1017
2021-08-30 21:31:06 -05:00
Geoff Bourne
788548d1f4 misc: upgraded mc-server-runner to 1.7.0 2021-08-30 21:17:48 -05:00
Geoff Bourne
0ae15c2b3c Fixed binding address of Limbo server
#994
2021-08-29 17:11:29 -05:00
itzg
b5b4257032 docs: Auto update markdown TOC 2021-08-29 21:26:47 +00:00
Daniel Ramp
657db124b2 docs: generator_settings json for 1.13+ (#1020) 2021-08-29 16:26:35 -05:00
dependabot[bot]
f5ea43b3d3 build(deps): bump docker/build-push-action from 2.6.1 to 2.7.0 (#1011) 2021-08-23 07:27:58 -05:00
itzg
01747510d5 docs: Auto update markdown TOC 2021-08-21 18:52:25 +00:00
Geoff Bourne
ff8b160a2b docs: added troubleshooting section 2021-08-21 13:52:25 -05:00
itzg
28b7afda15 docs: Auto update markdown TOC 2021-08-15 17:44:45 +00:00
Geoff Bourne
ecd253dd3e Added support for TYPE=LIMBO (#994) 2021-08-15 12:44:31 -05:00
Geoff Bourne
f2b090ac8e Auto-merging via docker-versions-create 2021-08-10 12:58:49 -05:00
Chris Fowles
8d0dbcd50e Detect and download FTB ARM installer (#995)
Co-authored-by: Chris Fowles <chris.fowles@plenti.com.au>
2021-08-10 12:53:01 -05:00
Geoff Bourne
30fd8eae94 Auto-merging via docker-versions-create 2021-08-01 12:16:32 -05:00
Geoff Bourne
a97bedc849 Auto-merging via docker-versions-create 2021-07-31 09:30:28 -05:00
Geoff Bourne
76777fcfd3 Auto-merging via docker-versions-create 2021-07-26 19:38:24 -05:00
Geoff Bourne
f668df9b8a Auto-merging via docker-versions-create 2021-07-25 18:28:54 -05:00
Geoff Bourne
1e05f6176a Auto-merging via docker-versions-create 2021-07-25 09:40:17 -05:00
Geoff Bourne
0b2b854400 Auto-merging via docker-versions-create 2021-07-23 21:30:20 -05:00
Geoff Bourne
df22793f6c Auto-merging via docker-versions-create 2021-07-17 21:17:20 -05:00
Geoff Bourne
34e26ebf72 Auto-merging via docker-versions-create 2021-07-17 21:00:07 -05:00
Geoff Bourne
ed47657b0e Auto-merging via docker-versions-create 2021-07-17 18:07:28 -05:00
Geoff Bourne
895e3d2cef Auto-merging via docker-versions-create 2021-07-14 18:43:39 -05:00
Geoff Bourne
d4435007a8 Auto-merging via docker-versions-create 2021-07-12 19:12:21 -05:00
Geoff Bourne
aac7b952e7 Auto-merging via docker-versions-create 2021-07-09 20:01:02 -05:00
Geoff Bourne
8a7d9b42f4 Auto-merging via docker-versions-create 2021-07-08 18:02:27 -05:00
Geoff Bourne
cd228f7b88 Auto-merging via docker-versions-create 2021-07-08 08:06:42 -05:00
itzg
2eef9c00bc Auto-merging via docker-versions-create 2021-07-08 12:56:15 +00:00
Geoff Bourne
99a470f81b Auto-merging via docker-versions-create 2021-07-08 07:43:27 -05:00
itzg
837f6701d4 Auto-merging via docker-versions-create 2021-07-04 19:54:13 +00:00
Geoff Bourne
3b7427722d Auto-merging from master 2021-07-03 14:31:16 -05:00
Geoff Bourne
ca0d8ecc42 ci: auto-merge from master 2021-07-02 16:20:46 -05:00
itzg
6580a6f980 Auto-merging via docker-versions-create 2021-07-02 16:56:10 +00:00
itzg
cbd1960788 Auto-merging via docker-versions-create 2021-06-28 12:14:20 +00:00
itzg
c1c0082650 Auto-merging via docker-versions-create 2021-06-27 13:13:25 +00:00
itzg
09d48be128 Auto-merging via docker-versions-create 2021-06-24 12:47:19 +00:00
Geoff Bourne
5569c1b245 Auto-merging via docker-versions-create 2021-06-23 22:36:42 -05:00
Geoff Bourne
c2a7a7b9c4 Auto-merging via docker-versions-create 2021-06-20 12:52:11 -05:00
Geoff Bourne
441625654b Auto-merging via docker-versions-create 2021-06-05 17:56:21 -05:00
Geoff Bourne
9ced589f54 Auto-merging via docker-versions-create 2021-05-24 20:53:42 -05:00
Geoff Bourne
b49bb85483 Merge branch 'master' into multiarch-latest 2021-05-23 12:27:43 -05:00
Geoff Bourne
c2e9fe7847 Merge from master 2021-05-22 13:48:08 -05:00
Geoff Bourne
05e6db5a4e Auto-merging via docker-versions-create 2021-05-21 23:04:38 -05:00
Geoff Bourne
04e8d07bcf Auto-merging via docker-versions-create 2021-05-21 22:54:00 -05:00
Geoff Bourne
25d12d9b2c ci: introduced CACHE_NAME 2021-05-21 22:09:49 -05:00
Geoff Bourne
07e9d59f50 Auto-merging via docker-versions-create 2021-05-19 20:32:29 -05:00
Geoff Bourne
8ace9969af Auto-merging via docker-versions-create 2021-05-15 12:44:54 -05:00
Geoff Bourne
2dbda0bed4 Merge branch 'multiarch' into multiarch-latest
# Conflicts:
#	.github/workflows/build-multiarch.yml
#	Dockerfile
2021-05-14 18:06:10 -05:00
Geoff Bourne
6ac97c41a5 Auto-merging via docker-versions-create 2021-05-06 20:18:38 -05:00
Geoff Bourne
a46dfa0a16 Auto-merging via docker-versions-create 2021-04-30 14:31:22 -05:00
Geoff Bourne
98989471f9 Auto-merging via docker-versions-create 2021-04-30 11:15:27 -05:00
Geoff Bourne
1aefe31c1c Auto-merging via docker-versions-create 2021-04-28 16:56:40 -05:00
Geoff Bourne
07b90ec1f4 Auto-merging via docker-versions-create 2021-04-26 08:24:13 -05:00
Geoff Bourne
11c7e64566 Auto-merging via docker-versions-create 2021-04-24 13:45:50 -05:00
Geoff Bourne
2becc9e25e Auto-merging via docker-versions-create 2021-04-23 21:06:52 -05:00
Geoff Bourne
a941ee8093 Auto-merging via docker-versions-create 2021-04-18 13:33:58 -05:00
Geoff Bourne
635a17949d Auto-merging via docker-versions-create 2021-04-11 10:13:08 -05:00
Geoff Bourne
c42d9b6170 Merged latest from master 2021-04-08 19:35:00 -05:00
Geoff Bourne
f6ce093a9f Auto-merging via docker-versions-create 2021-04-01 16:41:19 -05:00
Geoff Bourne
b754ce7ed4 Added git
#819
2021-04-01 16:29:22 -05:00
Geoff Bourne
26e75f29ba Merge branch 'master' into multiarch-latest 2021-03-06 16:28:10 -06:00
Geoff Bourne
43b090019d Shifted PATH-fix earlier in startup 2021-03-06 16:07:04 -06:00
Geoff Bourne
a9fec728e1 Ensure FTBA version.json is readable
#784
2021-03-06 11:44:05 -06:00
Geoff Bourne
e22dfa898d Auto-merging via docker-versions-create 2021-02-27 20:56:33 -06:00
Geoff Bourne
c353752c0c Merge branch 'master' into multiarch-latest 2021-02-10 14:59:41 -06:00
Geoff Bourne
b566c82892 Auto-merging via docker-versions-create 2021-02-10 14:09:30 -06:00
Geoff Bourne
a4abb22690 Merge branch 'master' into multiarch-latest
# Conflicts:
#	start-configuration
2021-02-08 21:28:46 -06:00
Geoff Bourne
6a9551fafe Auto-merging via docker-versions-create
CONFLICT (content): Merge conflict in Dockerfile
2021-02-07 18:23:57 -06:00
Geoff Bourne
e8061c08f7 Auto-merging docker-versions-create.sh
CONFLICT (content): Merge conflict in Dockerfile
2021-02-07 09:18:13 -06:00
Geoff Bourne
2e085f174c Merge branch 'master' into multiarch-latest 2021-02-06 14:52:49 -06:00
8 changed files with 115 additions and 10 deletions

View File

@@ -63,7 +63,7 @@ jobs:
- name: Build and push
id: docker_build
uses: docker/build-push-action@v2.6.1
uses: docker/build-push-action@v2.7.0
with:
context: .
platforms: linux/amd64,linux/arm/v7,linux/arm64

View File

@@ -70,7 +70,7 @@ jobs:
- name: Build and push
id: docker_build
uses: docker/build-push-action@v2.6.1
uses: docker/build-push-action@v2.7.0
with:
context: .
file: ./Dockerfile

View File

@@ -1,4 +1,4 @@
FROM adoptopenjdk:16-jre
FROM adoptopenjdk:latest
LABEL org.opencontainers.image.authors="Geoff Bourne <itzgeoff@gmail.com>"
@@ -52,7 +52,7 @@ RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
--from https://github.com/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
--var version=1.6.0 --var app=mc-server-runner --file {{.app}} \
--var version=1.7.0 --var app=mc-server-runner --file {{.app}} \
--from https://github.com/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \

View File

@@ -38,6 +38,7 @@ By default, the container will download the latest version of the "vanilla" [Min
* [Examples](#examples)
* [Amazon Web Services (AWS) Deployment](#amazon-web-services-aws-deployment)
* [Using Docker Compose](#using-docker-compose)
* [Troubleshooting](#troubleshooting)
* [Server types](#server-types)
* [Running a Forge Server](#running-a-forge-server)
* [Running a Bukkit/Spigot server](#running-a-bukkitspigot-server)
@@ -52,6 +53,7 @@ By default, the container will download the latest version of the "vanilla" [Min
* [Running an Canyon server](#running-an-canyon-server)
* [Running a SpongeVanilla server](#running-a-spongevanilla-server)
* [Running a Fabric Server](#running-a-fabric-server)
* [Running a Limbo server](#running-a-limbo-server)
* [Running a server with a Feed the Beast modpack](#running-a-server-with-a-feed-the-beast-modpack)
* [Environment Variables:](#environment-variables)
* [Upgrading](#upgrading)
@@ -127,7 +129,7 @@ By default, the container will download the latest version of the "vanilla" [Min
* [Enabling Autopause](#enabling-autopause)
* [Running on RaspberryPi](#running-on-raspberrypi)
<!-- Added by: runner, at: Sun Aug 1 17:09:36 UTC 2021 -->
<!-- Added by: runner, at: Sun Aug 29 21:26:46 UTC 2021 -->
<!--te-->
@@ -349,6 +351,14 @@ and in the same directory as that file run
Now, go play...or adjust the `environment` section to configure
this server instance.
## Troubleshooting
To troubleshoot the container initialization, such as when server files are pre-downloaded, set the environment variable `DEBUG` to `true`. The container logs will include **much more** output, and it is highly recommended including that output when reporting any [issues](https://github.com/itzg/docker-minecraft-server/issues).
To troubleshoot just the command-line used to start the Minecraft server, set the environment variable `DEBUG_EXEC` to `true`.
To troubleshoot any issues with memory allocation reported by the JVM, set the environment variable `DEBUG_MEMORY` to `true`.
## Server types
### Running a Forge Server
@@ -553,6 +563,20 @@ docker run -d -v /path/on/host:/data ... \
In order to add mods, you have two options:
### Running a Limbo server
A [Limbo](https://github.com/LOOHP/Limbo) server can be run by setting `TYPE` to `LIMBO`.
Configuration options with defaults:
- `LIMBO_BUILD`=LATEST
The `VERSION` will be ignored so locate the appropriate value from [here](https://ci.loohpjames.com/job/Limbo/) to match the version expected by clients.
- `FORCE_REDOWNLOAD`=false
- `LIMBO_SCHEMA_FILENAME`=default.schem
- `LEVEL`="Default;${LIMBO_SCHEMA_FILENAME}"
## Running a server with a Feed the Beast modpack
> **NOTE** requires one of the Debian based images listed in [the Java versions section](#running-minecraft-server-on-different-java-version).
@@ -985,6 +1009,10 @@ For example (just the `-e` bits):
-e LEVEL_TYPE=flat -e 'GENERATOR_SETTINGS=3;minecraft:bedrock,3*minecraft:stone,52*minecraft:sandstone;2;'
In Minecraft 1.13+ you need to pass json ([generator site](https://misode.github.io/world/)) like this (details see [here](https://github.com/itzg/docker-minecraft-server/issues/999#issuecomment-907849644)):
-e LEVEL_TYPE=flat -e 'GENERATOR_SETTINGS={"biome":"minecraft:the_void","layers":[{"block":"minecraft:bedrock","height":1},{"block":"minecraft:stone","height":10},{"block":"minecraft:dirt","height":1}],"structures":{"structures":{}}}'
### Custom Server Resource Pack
You can set a link to a custom resource pack and set it's checksum using the `RESOURCE_PACK` and `RESOURCE_PACK_SHA1` options respectively, the default is blank:

View File

@@ -100,7 +100,7 @@ case "${TYPE^^}" in
FORGE)
if versionLessThan 1.17; then
log "**********************************************************************"
log "WARNING: The image tag itzg/minecraft-server:java8 is recommended"
log "WARNING: The image tag itzg/minecraft-server:java8-multiarch is recommended"
log " since some mods require Java 8"
log " Exception traces reporting ClassCastException: class jdk.internal.loader.ClassLoaders\$AppClassLoader"
log " can be fixed with java8"
@@ -119,7 +119,7 @@ case "${TYPE^^}" in
FTB|CURSEFORGE)
log "**********************************************************************"
log "WARNING: The image tag itzg/minecraft-server:java8 is recommended"
log "WARNING: The image tag itzg/minecraft-server:java8-multiarch is recommended"
log " since some mods require Java 8"
log " Exception traces reporting ClassCastException: class jdk.internal.loader.ClassLoaders\$AppClassLoader"
log " can be fixed with java8"
@@ -171,11 +171,15 @@ case "${TYPE^^}" in
exec ${SCRIPTS:-/}start-deployCanyon "$@"
;;
LIMBO)
exec ${SCRIPTS:-/}start-deployLimbo "$@"
;;
*)
log "Invalid type: '$TYPE'"
log "Must be: VANILLA, FORGE, BUKKIT, SPIGOT, PAPER, FTBA (multiarch-only),"
log " CURSE_INSTANCE, CURSEFORGE, SPONGEVANILLA, TUINITY, PURPUR"
log " CUSTOM, MAGMA, MOHIST, CATSERVER, YATOPIA, AIRPLANE, CANYON"
log " CUSTOM, MAGMA, MOHIST, CATSERVER, YATOPIA, AIRPLANE, CANYON, LIMBO"
exit 1
;;

View File

@@ -30,7 +30,13 @@ if ! [ -f "${ftbInstallMarker}" ] || [ $(cat "${ftbInstallMarker}") != "${FTB_MO
ftbInstaller=/data/ftb-installer
if ! [[ -f "${ftbInstaller}" ]]; then
log "Downloading FTB installer"
curl -fsSL https://api.modpacks.ch/public/modpack/1/1/server/linux -o "${ftbInstaller}"
if [ "$(uname -m)" == "aarch64" ]; then
log "Downloading ARM installer"
curl -fsSL https://api.modpacks.ch/public/modpack/1/1/server/arm/linux -o "${ftbInstaller}"
else
log "Downloading x86 installer"
curl -fsSL https://api.modpacks.ch/public/modpack/1/1/server/linux -o "${ftbInstaller}"
fi
chmod +x "${ftbInstaller}"
fi

64
start-deployLimbo Normal file
View File

@@ -0,0 +1,64 @@
#!/bin/bash
set -euo pipefail
IFS=$'\n\t'
. ${SCRIPTS:-/}start-utils
isDebugging && set -x
: ${LIMBO_BUILD:=LATEST}
: ${FORCE_REDOWNLOAD:=false}
: ${LIMBO_SCHEMA_FILENAME:=default.schem}
: ${LEVEL:=Default;${LIMBO_SCHEMA_FILENAME}}
# defaults to localhost, if this is not set
: ${SERVER_IP:=0.0.0.0}
export LEVEL SERVER_IP
if [[ ${LIMBO_BUILD^^} == LATEST ]]; then
LIMBO_BUILD=lastStableBuild
fi
baseUrl="https://ci.loohpjames.com/job/Limbo/${LIMBO_BUILD}"
buildInfoUrl="${baseUrl}/api/json"
buildJson=$(curl -fsSL "${buildInfoUrl}")
if [ $? != 0 ]; then
log "ERROR failed to get build info from ${buildInfoUrl} (status=$?)"
exit 1
fi
if [[ ${LIMBO_BUILD} = lastStableBuild ]]; then
LIMBO_BUILD=$(jq -r '.number' <<<${buildJson})
log "Resolved latest Limbo build to ${LIMBO_BUILD}"
fi
artifactPath=$(jq -r '.artifacts[] | select(.fileName|test("^Limbo-")) | .relativePath' <<<${buildJson})
defaultSchemaPath=$(jq -r '.artifacts[] | select(.fileName|test(".*\\.schem")) | .relativePath' <<<${buildJson})
export SERVER="limbo-${LIMBO_BUILD}.jar"
if [ ! -f "$SERVER" ] || isTrue "$FORCE_REDOWNLOAD"; then
downloadUrl="${baseUrl}/artifact/${artifactPath}"
log "Downloading Limbo from $downloadUrl ..."
if ! curl -fsSL -o "$SERVER" "$downloadUrl"; then
log "ERROR: failed to download from $downloadUrl (status=$?)"
exit 3
fi
fi
if [ ! -f "${LIMBO_SCHEMA_FILENAME}" ]; then
log "Downloading default schem file"
if ! curl -o "${LIMBO_SCHEMA_FILENAME}" -fsSL "${baseUrl}/artifact/${defaultSchemaPath}"; then
log "ERROR: failed to download schema file $baseUrl (status=$?)"
exit 3
fi
fi
if [[ ${LEVEL} != *\;* ]]; then
LEVEL="${LEVEL};${LIMBO_SCHEMA_FILENAME}"
fi
export LEVEL
export SKIP_LOG4J_CONFIG=true
# Continue to Final Setup
exec ${SCRIPTS:-/}start-finalSetupWorld $@

View File

@@ -154,7 +154,10 @@ fi
if [[ "${GENERIC_PACK}" ]]; then
if isURL "${GENERIC_PACK}"; then
log "Downloading generic pack ..."
curl -fsSL -o /tmp/generic_pack.zip "${GENERIC_PACK}"
if ! curl -fsSL -o /tmp/generic_pack.zip "${GENERIC_PACK}"; then
log "ERROR: failed to download ${GENERIC_PACK}"
exit 2
fi
GENERIC_PACK=/tmp/generic_pack.zip
fi