Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: itzg/docker-minecraft-server
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2024.10.0
Choose a base ref
...
head repository: itzg/docker-minecraft-server
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2024.10.1
Choose a head ref
  • 5 commits
  • 9 files changed
  • 2 contributors

Commits on Oct 5, 2024

  1. Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    34187ad View commit details

Commits on Oct 6, 2024

  1. For FTBA support extra mods with Modrinth/CurseForge (#3092)

    itzg authored Oct 6, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    d4af9b1 View commit details
  2. build: deprecating java8-alpine (for now) (#3094)

    itzg authored Oct 6, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    7974bac View commit details

Commits on Oct 7, 2024

  1. modrinth: support datapack retrieval (#3096)

    itzg authored Oct 7, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    1b8b694 View commit details

Commits on Oct 8, 2024

  1. build(deps): bump the updates group with 3 updates (#3097)

    dependabot[bot] authored Oct 8, 2024

    Verified

    This commit was created on GitHub.com and signed with GitHub’s verified signature.
    Copy the full SHA
    fdc1f44 View commit details
11 changes: 3 additions & 8 deletions .github/workflows/build-multiarch.yml
Original file line number Diff line number Diff line change
@@ -31,7 +31,6 @@ jobs:
- java8-graalvm-ce
- java8-openj9
- java8-jdk
- java8-alpine
- java11
include:
# JAVA 21:
@@ -75,10 +74,6 @@ jobs:
baseImage: eclipse-temurin:8u312-b07-jre-focal
platforms: linux/amd64,linux/arm/v7,linux/arm64
mcVersion: 1.12.2
- variant: java8-alpine
baseImage: openjdk:8-jre-alpine3.9
platforms: linux/amd64
mcVersion: 1.12.2
- variant: java8-graalvm-ce
baseImage: ghcr.io/graalvm/graalvm-ce:java8
platforms: linux/amd64
@@ -133,13 +128,13 @@ jobs:
org.opencontainers.image.authors=Geoff Bourne <itzgeoff@gmail.com>
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3.6.1
uses: docker/setup-buildx-action@v3.7.1

- name: Set up QEMU
uses: docker/setup-qemu-action@v3.2.0

- name: Build for test
uses: docker/build-push-action@v6.8.0
uses: docker/build-push-action@v6.9.0
with:
platforms: linux/amd64
tags: ${{ env.IMAGE_TO_TEST }}
@@ -177,7 +172,7 @@ jobs:
password: ${{ github.token }}

- name: Build and push
uses: docker/build-push-action@v6.8.0
uses: docker/build-push-action@v6.9.0
if: github.actor == github.repository_owner
with:
platforms: ${{ matrix.platforms }}
2 changes: 1 addition & 1 deletion .github/workflows/discord.yml
Original file line number Diff line number Diff line change
@@ -19,7 +19,7 @@ jobs:
steps:
- name: on-publish
if: github.event_name == 'release' && github.event.action == 'published'
uses: SethCohen/github-releases-to-discord@v1.15.0
uses: SethCohen/github-releases-to-discord@v1.15.1
with:
webhook_url: ${{ secrets.DISCORD_WEBHOOK }}
- name: on-success
6 changes: 3 additions & 3 deletions .github/workflows/verify-pr.yml
Original file line number Diff line number Diff line change
@@ -53,10 +53,10 @@ jobs:
fetch-depth: 0

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@v3.6.1
uses: docker/setup-buildx-action@v3.7.1

- name: Confirm multi-arch build
uses: docker/build-push-action@v6.8.0
uses: docker/build-push-action@v6.9.0
with:
platforms: ${{ matrix.platforms }}
# ensure latest base image is used
@@ -66,7 +66,7 @@ jobs:
cache-from: type=gha,scope=${{ matrix.variant }}

- name: Build for test
uses: docker/build-push-action@v6.8.0
uses: docker/build-push-action@v6.9.0
with:
# Only build single platform since loading multi-arch image into daemon fails with
# "docker exporter does not currently support exporting manifest lists"
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -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.39.12
ARG MC_HELPER_VERSION=1.39.13
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
20 changes: 11 additions & 9 deletions docs/mods-and-plugins/modrinth.md
Original file line number Diff line number Diff line change
@@ -9,16 +9,18 @@
|
+-- project slug
```
Also, a specific version/type can be declared using colon symbol and version id/type after the project slug. The version id can be found in the 'Metadata' section. Valid version types are `release`, `beta`, `alpha`.

!!! example
Also, a specific version (or release type) can be declared adding a colon and then the version id, version name, or release type after the project slug. The version ID can be found in the 'Metadata' section. Valid release types are `release`, `beta`, `alpha`.
To select a datapack from a Modrinth project, prefix the entry with "datapack:". When running a vanilla server, this is optional since only datapacks will be available for vanilla servers to select.

| Description | Example |
|---------------------------------|-----------------------|
| Select latest version | `fabric-api` |
| Select specific version | `fabric-api:PbVeub96` |
| Select latest beta version | `fabric-api:beta` |
| Latest version using project ID | `P7dR8mSH` |
| Description | Example projects entry |
|---------------------------------|----------------------------|
| Select latest version | `fabric-api` |
| Select specific version | `fabric-api:PbVeub96` |
| Select latest beta version | `fabric-api:beta` |
| Latest version using project ID | `P7dR8mSH` |
| Latest version of datapack | `datapack:terralith` |
| Specific version of datapack | `datapack:terralith:2.5.5` |

## Extra options

2 changes: 1 addition & 1 deletion docs/versions/java.md
Original file line number Diff line number Diff line change
@@ -23,7 +23,6 @@ where `<tag>` refers to the first column of this table:
| java17-alpine | 17 | Alpine | Hotspot | amd64 (1) |
| java11 | 11 | Ubuntu | Hotspot | amd64, arm64, armv7 |
| java8 | 8 | Ubuntu | Hotspot | amd64, arm64, armv7 |
| java8-alpine | 8 | Alpine | Hotspot | amd64 (1) |
| java8-jdk | 8 | Ubuntu | Hotspot+JDK | amd64 |
| java8-openj9 | 8 | Debian | OpenJ9 | amd64 |
| java8-graalvm-ce | 8 | Oracle | GraalVM CE | amd64 |
@@ -133,5 +132,6 @@ The following image tags have been deprecated and are no longer receiving update
- java17-openj9
- java20-graalvm, java20, java20-alpine
- java8-multiarch is still built and pushed, but please move to java8 instead
- java8-alpine

[^1]: Based on the [Oracle GraalMV images](https://blogs.oracle.com/java/post/new-oracle-graalvm-container-images), which as of JDK 17, are now under the [GraalVM Free License](https://blogs.oracle.com/java/post/graalvm-free-license) incorporating what used to be known as the GraalVM Enterprise.
23 changes: 12 additions & 11 deletions examples/bmc4/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
services:
mc:
image: itzg/minecraft-server:java17
image: itzg/minecraft-server
environment:
EULA: true
TYPE: MODRINTH
MEMORY: 4G
MODRINTH_MODPACK: better-mc-forge-bmc4
MODRINTH_VERSION: v28
MOD_PLATFORM: MODRINTH
MODRINTH_MODPACK: https://modrinth.com/modpack/better-mc-forge-bmc4/version/v32.5
MODRINTH_EXCLUDE_FILES: |
XaeroPlus
XaerosWorldMap
MODRINTH_OVERRIDES_EXCLUSIONS: |
mods/NekosEnchantedBooks-*.jar
mods/citresewn-*.jar
volumes:
- data:/data
**/datapacks/BE_default_endgen_fix*
MODRINTH_FORCE_SYNCHRONIZE: true
MEMORY: 4G
ports:
- "25565:25565"

volumes:
data: {}
# declare /data volume mapping as desired
# volumes:
# - ./data:/data
28 changes: 27 additions & 1 deletion scripts/start-deployFTBA
Original file line number Diff line number Diff line change
@@ -88,6 +88,32 @@ if ! [ -v SERVER ]; then
exit 2
fi

export FAMILY=FORGE
# Remap the TYPE and FAMILY based on discovered server jar
if [[ $SERVER = run.sh ]]; then
if grep -q neoforge "$SERVER"; then
export FAMILY=FORGE
export TYPE=NEOFORGE
elif grep -q forge "$SERVER"; then
export FAMILY=FORGE
export TYPE=FORGE
elif grep -q fabric run.s; then
export FAMILY=FABRIC
export TYPE=FABRIC
else
log "ERROR: unrecognized loader type in $SERVER"
cat "$SERVER"
exit 1
fi

elif [[ $SERVER = forge* ]]; then
export FAMILY=FORGE
export TYPE=FORGE
elif [[ $SERVER = fabric* ]]; then
export FAMILY=FABRIC
export TYPE=FABRIC
else
log "ERROR: unrecognized loader type from $SERVER"
exit 1
fi

exec "${SCRIPTS:-/}start-setupWorld" "$@"
5 changes: 4 additions & 1 deletion scripts/start-setupModpack
Original file line number Diff line number Diff line change
@@ -244,14 +244,17 @@ function handleModrinthProjects() {
log " Use MODRINTH_DOWNLOAD_DEPENDENCIES=optional instead"
fi

if [[ $MODRINTH_PROJECTS ]] && isFamily HYBRID FORGE FABRIC SPIGOT; then
if [[ $MODRINTH_PROJECTS ]]; then
if isFamily HYBRID; then
loader=forge
elif isFamily VANILLA; then
loader=datapack
else
loader="${TYPE,,}"
fi
mc-image-helper modrinth \
--output-directory=/data \
--world-directory="${LEVEL:-world}" \
--projects="${MODRINTH_PROJECTS}" \
--game-version="${VERSION}" \
--loader="$loader" \