Compare commits

..

1 Commits

Author SHA1 Message Date
Geoff Bourne
f502acfbff build: fix regex pattern that was bad in docs 2026-02-16 12:06:30 -06:00
14 changed files with 50 additions and 123 deletions

1
.github/release.yml vendored
View File

@@ -2,7 +2,6 @@ changelog:
exclude:
authors:
- dependabot
- renovate
categories:
- title: Enhancements
labels:

View File

@@ -138,7 +138,7 @@ jobs:
uses: docker/setup-qemu-action@v3.7.0
- name: Build for test
uses: docker/build-push-action@v7.0.0
uses: docker/build-push-action@v6.19.2
with:
platforms: linux/amd64
tags: ${{ env.IMAGE_TO_TEST }}
@@ -178,7 +178,7 @@ jobs:
password: ${{ github.token }}
- name: Build and push
uses: docker/build-push-action@v7.0.0
uses: docker/build-push-action@v6.19.2
if: github.actor == github.repository_owner
with:
platforms: ${{ matrix.platforms }}

View File

@@ -1,17 +1,33 @@
name: Issues notify
name: Issue labels
on:
issues:
types:
- opened
- labeled
- unlabeled
- closed
types: [labeled, reopened, closed, deleted]
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_ISSUES_WEBHOOK }}
jobs:
notify:
uses: itzg/github-workflows/.github/workflows/issues-notify-discord.yml@main
with:
triageLabel: 'status/needs triage'
secrets:
discordWebhook: "${{secrets.DISCORD_ISSUES_WEBHOOK}}"
labelNotify:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- name: notify on label
if: >
github.event.label.name == 'enhancement'
|| github.event.label.name == 'bug'
|| github.event.label.name == 'help wanted'
|| github.event.label.name == 'priority/high'
|| github.event.label.name == 'question'
|| github.event.label.name == 'status/waiting on upstream'
uses: Ilshidur/action-discord@master
with:
args: "[${{ github.event.issue.title }} (#${{ github.event.issue.number }})](<${{ github.event.issue.html_url }}>) added `${{ github.event.label.name }}` label"
- name: notify on action change
if: >
github.event.action == 'closed'
|| github.event.action == 'reopened'
|| github.event.action == 'deleted'
uses: Ilshidur/action-discord@master
with:
args: "[${{ github.event.issue.title }} (#${{ github.event.issue.number }})](<${{ github.event.issue.html_url }}>) has been `${{ github.event.action }}` by `${{ github.event.sender.login }}`"

View File

@@ -62,7 +62,7 @@ jobs:
uses: docker/setup-buildx-action@v3.12.0
- name: Confirm multi-arch build
uses: docker/build-push-action@v7.0.0
uses: docker/build-push-action@v6.19.2
with:
platforms: ${{ matrix.platforms }}
# ensure latest base image is used
@@ -73,7 +73,7 @@ jobs:
cache-from: type=gha,scope=${{ matrix.variant }}
- name: Build for test
uses: docker/build-push-action@v7.0.0
uses: docker/build-push-action@v6.19.2
with:
# Only build single platform since loading multi-arch image into daemon fails with
# "docker exporter does not currently support exporting manifest lists"

View File

@@ -1,15 +1,19 @@
version: 2
python:
install:
- requirements: docs/requirements.txt
build:
os: ubuntu-24.04
tools:
python: "3.14"
python: latest
jobs:
# We recommend using a requirements file for reproducible builds.
# This is just a quick example to get started.
# https://docs.readthedocs.io/page/guides/reproducible-builds.html
install:
- pip install -r docs/requirements.txt
- pip install zensical
build:
html:
- zensical build

View File

@@ -25,37 +25,32 @@ EXPOSE 25565
ARG APPS_REV=1
ARG GITHUB_BASEURL=https://github.com
# renovate: datasource=github-releases packageName=itzg/easy-add
ARG EASY_ADD_VERSION=0.8.11
ADD ${GITHUB_BASEURL}/itzg/easy-add/releases/download/${EASY_ADD_VERSION}/easy-add_${TARGETOS}_${TARGETARCH}${TARGETVARIANT} /usr/bin/easy-add
RUN chmod +x /usr/bin/easy-add
# renovate: datasource=github-releases packageName=itzg/restify
ARG RESTIFY_VERSION=1.7.12
ARG RESTIFY_VERSION=1.7.11
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
--var version=${RESTIFY_VERSION} --var app=restify --file {{.app}} \
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
# renovate: datasource=github-releases packageName=itzg/rcon-cli
ARG RCON_CLI_VERSION=1.7.3
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
--var version=${RCON_CLI_VERSION} --var app=rcon-cli --file {{.app}} \
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
# renovate: datasource=github-releases packageName=itzg/mc-monitor
ARG MC_MONITOR_VERSION=0.16.1
ARG MC_MONITOR_VERSION=0.16.0
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
--var version=${MC_MONITOR_VERSION} --var app=mc-monitor --file {{.app}} \
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
# renovate: datasource=github-releases packageName=itzg/mc-server-runner
ARG MC_SERVER_RUNNER_VERSION=1.14.2
ARG MC_SERVER_RUNNER_VERSION=1.14.1
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
# renovate: datasource=github-releases packageName=itzg/mc-image-helper versioning=loose
ARG MC_HELPER_VERSION=1.55.2
ARG MC_HELPER_VERSION=1.54.0
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

View File

@@ -31,7 +31,6 @@ apk add --no-cache -U \
libpcap \
libwebp \
libcap \
numactl \
${EXTRA_ALPINE_PACKAGES}
# Download and install patched knockd

View File

@@ -27,7 +27,6 @@ apt-get install -y \
lbzip2 \
nfs-common \
libpcap0.8 \
libnuma1 \
${EXTRA_DEB_PACKAGES}
# Install Git LFS

View File

@@ -166,7 +166,7 @@ such as:
## HTTP Proxy
You may configure the use of an HTTP/HTTPS proxy by passing the proxy's "host:port" via the environment variable `PROXY`. In [the example compose file](https://github.com/itzg/docker-minecraft-server/blob/master/examples/proxied/compose.yml) it references a Squid proxy. The host and port can be separately passed via the environment variables `PROXY_HOST` and `PROXY_PORT`. A `|` delimited list of hosts to exclude from proxying can be passed via `PROXY_NON_PROXY_HOSTS`.
You may configure the use of an HTTP/HTTPS proxy by passing the proxy's "host:port" via the environment variable `PROXY`. In [the example compose file](https://github.com/itzg/docker-minecraft-server/blob/master/examples/docker-compose-proxied.yml) it references a Squid proxy. The host and port can be separately passed via the environment variables `PROXY_HOST` and `PROXY_PORT`. A `|` delimited list of hosts to exclude from proxying can be passed via `PROXY_NON_PROXY_HOSTS`.
## Using "noconsole" option

View File

@@ -1,84 +1,4 @@
## Simple image additions
You can easily build upon the base image using an inline Dockerfile.
```yaml title="compose.yaml"
services:
mc:
build:
context: .
dockerfile_inline: |
FROM itzg/minecraft-server:latest
RUN apt-get update && apt-get install -y \
webp \
&& rm -rf /var/lib/apt/lists/*
pull: true # Always pull new base image
pull_policy: build
restart: unless-stopped
environment:
EULA: true
ports:
- "25565:25565/tcp"
volumes:
- ./data:/data
```
Here is an example to add Nvidia GPU support for C2ME:
??? Example "C2ME GPU example"
```yaml title="compose.yaml"
services:
mc:
build:
context: .
dockerfile_inline: |
FROM itzg/minecraft-server:java25
# Install OpenCL loader and NVIDIA driver capabilities
RUN apt-get update && apt-get install -y \
ocl-icd-libopencl1 \
opencl-headers \
clinfo \
&& rm -rf /var/lib/apt/lists/*
# 1. Create the vendor directory
# 2. Tell OpenCL to use the NVIDIA library
RUN mkdir -p /etc/OpenCL/vendors && \
echo "libnvidia-opencl.so.1" > /etc/OpenCL/vendors/nvidia.icd
# Tell the NVIDIA container runtime to expose all GPU capabilities (including compute/utility)
ENV NVIDIA_VISIBLE_DEVICES all
ENV NVIDIA_DRIVER_CAPABILITIES compute,utility,graphics,video
COPY ./mods /mods
pull: true # Always pull new base image
pull_policy: build
restart: unless-stopped
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
environment:
EULA: true
TYPE: "FABRIC"
VERSION: 1.21.10
MEMORY: 8G
MODRINTH_PROJECTS: |-
fabric-api
c2me
ports:
- "25565:25565/tcp"
volumes:
- ./data:/data
```
!!! tip "For advanced use only"
This page describes a capability that is not applicable to most users. It is only intended for rare cases when a very specific Java base image is needed or additional packages need to be installed that are not generally applicable or would bloat the image size.

View File

@@ -11,7 +11,7 @@ mkdocs==1.6.1
mkdocs-autorefs==1.4.4
mkdocs-get-deps==0.2.0
mkdocstrings==1.0.3
mkdocstrings-python==2.0.3
mkdocstrings-python==2.0.2
packaging==26.0
pathspec==1.0.4
platformdirs==4.9.2
@@ -22,4 +22,4 @@ PyYAML==6.0.3
pyyaml_env_tag==1.1
six==1.17.0
watchdog==6.0.0
zensical==0.0.24
# zensical @ file:///

View File

@@ -2,7 +2,7 @@
{
"tag": "latest",
"notes": "Always tracks the most recent commit on the main branch",
"java": "25",
"java": "21",
"distribution": "ubuntu",
"jvm": "hotspot",
"architectures": ["amd64", "arm64"],
@@ -141,5 +141,4 @@
{"tag": "java8-jdk", "deprecated": true},
{"tag": "java8-openj9", "deprecated": true},
{"tag": "java8-graalvm-ce", "deprecated": true}
]
]

View File

@@ -11,6 +11,5 @@
"# renovate: datasource=(?<datasource>[a-z-]+?)(?: packageName=(?<packageName>.+?))?(?: versioning=(?<versioning>[a-z-]+))?\\s(?:ENV|ARG) .+?_VERSION=(?<currentValue>.+?)\\s"
]
}
],
"labels": ["dependencies"]
]
}

View File

@@ -8,11 +8,8 @@ function getGTNHdownloadPath(){
gtnh_download_path=""
current_java_version=$(mc-image-helper java-release)
if ! packs_data="$(
curl -fsSL "https://downloads.gtnewhorizons.com/versions.json" \
| jq -r '.versions[]?.server? | .[]? | select(type=="string" and test("Server"))'
)"; then
logError "Failed to retrieve data from https://downloads.gtnewhorizons.com/versions.json"
if ! packs_data="$(restify --tag=a https://www.gtnewhorizons.com/version-history/ | jq -r '.[].href | select(test("Server"))')"; then
logError "Failed to retrieve data from http://downloads.gtnewhorizons.com/ServerPacks/?raw"
exit 1
fi
mapfile -t packs <<< "$packs_data"