mirror of
https://github.com/itzg/docker-minecraft-server.git
synced 2026-03-15 03:01:23 +00:00
Compare commits
9 Commits
2026.3.0
...
feat/apply
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dfdc95572a | ||
|
|
c5a298fa05 | ||
|
|
5dff0b8541 | ||
|
|
9c9a3a8b43 | ||
|
|
3bbe3b7c80 | ||
|
|
ddb3dbf776 | ||
|
|
1cf70665bb | ||
|
|
a543ee7ebc | ||
|
|
a69017b5e1 |
@@ -1,19 +1,15 @@
|
|||||||
version: 2
|
version: 2
|
||||||
|
|
||||||
python:
|
|
||||||
install:
|
|
||||||
- requirements: docs/requirements.txt
|
|
||||||
|
|
||||||
build:
|
build:
|
||||||
os: ubuntu-24.04
|
os: ubuntu-24.04
|
||||||
tools:
|
tools:
|
||||||
python: latest
|
python: "3.14"
|
||||||
jobs:
|
jobs:
|
||||||
# We recommend using a requirements file for reproducible builds.
|
# We recommend using a requirements file for reproducible builds.
|
||||||
# This is just a quick example to get started.
|
# This is just a quick example to get started.
|
||||||
# https://docs.readthedocs.io/page/guides/reproducible-builds.html
|
# https://docs.readthedocs.io/page/guides/reproducible-builds.html
|
||||||
install:
|
install:
|
||||||
- pip install zensical
|
- pip install -r docs/requirements.txt
|
||||||
build:
|
build:
|
||||||
html:
|
html:
|
||||||
- zensical build
|
- zensical build
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
|||||||
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
||||||
|
|
||||||
# renovate: datasource=github-releases packageName=itzg/rcon-cli
|
# renovate: datasource=github-releases packageName=itzg/rcon-cli
|
||||||
ARG RCON_CLI_VERSION=1.7.3
|
ARG RCON_CLI_VERSION=1.7.4
|
||||||
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
||||||
--var version=${RCON_CLI_VERSION} --var app=rcon-cli --file {{.app}} \
|
--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
|
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
||||||
@@ -49,7 +49,7 @@ RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
|||||||
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
||||||
|
|
||||||
# renovate: datasource=github-releases packageName=itzg/mc-server-runner
|
# renovate: datasource=github-releases packageName=itzg/mc-server-runner
|
||||||
ARG MC_SERVER_RUNNER_VERSION=1.14.1
|
ARG MC_SERVER_RUNNER_VERSION=1.14.3
|
||||||
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
||||||
--var version=${MC_SERVER_RUNNER_VERSION} --var app=mc-server-runner --file {{.app}} \
|
--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
|
--from ${GITHUB_BASEURL}/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ apk add --no-cache -U \
|
|||||||
libpcap \
|
libpcap \
|
||||||
libwebp \
|
libwebp \
|
||||||
libcap \
|
libcap \
|
||||||
|
numactl \
|
||||||
${EXTRA_ALPINE_PACKAGES}
|
${EXTRA_ALPINE_PACKAGES}
|
||||||
|
|
||||||
# Download and install patched knockd
|
# Download and install patched knockd
|
||||||
|
|||||||
@@ -27,6 +27,7 @@ apt-get install -y \
|
|||||||
lbzip2 \
|
lbzip2 \
|
||||||
nfs-common \
|
nfs-common \
|
||||||
libpcap0.8 \
|
libpcap0.8 \
|
||||||
|
libnuma1 \
|
||||||
${EXTRA_DEB_PACKAGES}
|
${EXTRA_DEB_PACKAGES}
|
||||||
|
|
||||||
# Install Git LFS
|
# Install Git LFS
|
||||||
|
|||||||
@@ -1,4 +1,84 @@
|
|||||||
|
|
||||||
|
## 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"
|
!!! 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.
|
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.
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ mkdocstrings==1.0.3
|
|||||||
mkdocstrings-python==2.0.3
|
mkdocstrings-python==2.0.3
|
||||||
packaging==26.0
|
packaging==26.0
|
||||||
pathspec==1.0.4
|
pathspec==1.0.4
|
||||||
platformdirs==4.9.2
|
platformdirs==4.9.4
|
||||||
Pygments==2.19.2
|
Pygments==2.19.2
|
||||||
pymdown-extensions==10.21
|
pymdown-extensions==10.21
|
||||||
python-dateutil==2.9.0.post0
|
python-dateutil==2.9.0.post0
|
||||||
@@ -22,4 +22,4 @@ PyYAML==6.0.3
|
|||||||
pyyaml_env_tag==1.1
|
pyyaml_env_tag==1.1
|
||||||
six==1.17.0
|
six==1.17.0
|
||||||
watchdog==6.0.0
|
watchdog==6.0.0
|
||||||
# zensical @ file:///
|
zensical==0.0.24
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 83 KiB After Width: | Height: | Size: 75 KiB |
@@ -54,8 +54,8 @@ fi
|
|||||||
|
|
||||||
if isTrue "${DEBUG_MEMORY:-false}"; then
|
if isTrue "${DEBUG_MEMORY:-false}"; then
|
||||||
log "Memory usage and availability (in MB)"
|
log "Memory usage and availability (in MB)"
|
||||||
uname -pars
|
uname -pars | applyLogPrefix
|
||||||
free -m
|
free -m | applyLogPrefix
|
||||||
fi
|
fi
|
||||||
|
|
||||||
##########################################
|
##########################################
|
||||||
|
|||||||
@@ -125,6 +125,12 @@ function logn() {
|
|||||||
echo -n "[init] $*"
|
echo -n "[init] $*"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Use as
|
||||||
|
# cmd | applyLogPrefix
|
||||||
|
function applyLogPrefix() {
|
||||||
|
sed 's/^/[init] /'
|
||||||
|
}
|
||||||
|
|
||||||
function log() {
|
function log() {
|
||||||
local oldState
|
local oldState
|
||||||
# The return status when listing options is zero if all optnames are enabled, non- zero otherwise.
|
# The return status when listing options is zero if all optnames are enabled, non- zero otherwise.
|
||||||
|
|||||||
Reference in New Issue
Block a user