mirror of
https://github.com/itzg/docker-minecraft-server.git
synced 2026-02-18 07:26:24 +00:00
Compare commits
1 Commits
2023.9.1
...
fix/modrit
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
78d076e65e |
11
.github/dependabot.yml
vendored
11
.github/dependabot.yml
vendored
@@ -1,16 +1,7 @@
|
||||
version: 2
|
||||
updates:
|
||||
# Maintain dependencies for GitHub Actions
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
- package-ecosystem: pip
|
||||
directory: "/docs"
|
||||
schedule:
|
||||
interval: weekly
|
||||
groups:
|
||||
patches:
|
||||
patterns:
|
||||
- "*"
|
||||
update-types:
|
||||
- patch
|
||||
|
||||
@@ -42,7 +42,7 @@ RUN easy-add --var os=${TARGETOS} --var arch=${TARGETARCH}${TARGETVARIANT} \
|
||||
--var version=1.9.0 --var app=mc-server-runner --file {{.app}} \
|
||||
--from https://github.com/itzg/{{.app}}/releases/download/{{.version}}/{{.app}}_{{.version}}_{{.os}}_{{.arch}}.tar.gz
|
||||
|
||||
ARG MC_HELPER_VERSION=1.34.7
|
||||
ARG MC_HELPER_VERSION=1.34.5
|
||||
ARG MC_HELPER_BASE_URL=https://github.com/itzg/mc-image-helper/releases/download/${MC_HELPER_VERSION}
|
||||
# used for cache busting local copy of mc-image-helper
|
||||
ARG MC_HELPER_REV=1
|
||||
|
||||
@@ -873,7 +873,7 @@ For example, the following will auto-download the [EssentialsX](https://www.spig
|
||||
```
|
||||
-e MODRINTH_PROJECTS=fabric-api,fabric-api:PbVeub96,fabric-api:beta
|
||||
```
|
||||
- **MODRINTH_DOWNLOAD_OPTIONAL_DEPENDENCIES**=true : required dependencies of the project will _always_ be downloaded and optional dependencies can also be downloaded by setting this to `true`
|
||||
- **MODRINTH_DOWNLOAD_OPTIONAL_DEPENDENCIES**=false : required dependencies of the project will _always_ be downloaded and optional dependencies can also be downloaded by setting this to `true`
|
||||
- **MODRINTH_ALLOWED_VERSION_TYPE**=release : the version type is used to determine the newest version to use from each project. The allowed values are `release`, `beta`, `alpha`.
|
||||
|
||||
### Downloadable mod/plugin pack for Forge, Fabric, and Bukkit-like Servers
|
||||
|
||||
@@ -64,19 +64,9 @@ To whitelist players for your Minecraft server, you can:
|
||||
|
||||
When either is set, [whitelisting of connecting users](https://minecraft.fandom.com/wiki/Server.properties#white-list) is enabled.
|
||||
|
||||
To change the behavior when the whitelist file already exists, set the variable `EXISTING_WHITELIST_FILE` to one of the following options:
|
||||
Use of `WHITELIST_FILE` will **overwrite** an existing `whitelist.json` file; however, the option can be combined with `WHITELIST` to refine the list.
|
||||
|
||||
`SKIP` (default)
|
||||
: Skip processing of the whitelist file when one is already present. This is the same as setting the legacy variable `OVERRIDE_WHITELIST` to "false".
|
||||
|
||||
`SYNCHRONIZE`
|
||||
: Synchronize the list of users in the file with the `WHITELIST` or `WHITELIST_FILE` provided. When using both, `WHITELIST` will take precedence. This is the same as setting the legacy variable `OVERRIDE_WHITELIST` to "true".
|
||||
|
||||
`MERGE`
|
||||
: Merge the list of users from `WHITELIST` into the existing file. `WHITELIST_FILE` cannot be used with this option.
|
||||
|
||||
`SYNC_FILE_MERGE_LIST`
|
||||
: When `WHITELIST_FILE` is provided it will overwrite an existing whitelist file. Also, if `WHITELIST` is provided, then those users will be merged into the newly copied file.
|
||||
By default, `WHITELIST` will keep the `whitelist.json` fully synchronized with the given list. All whitelist entries can be removed by setting `WHITELIST` to an empty string. To only append new users, set `APPEND_WHITELIST` to "true".
|
||||
|
||||
!!! note
|
||||
|
||||
@@ -86,10 +76,10 @@ To [enforce the whitelist changes immediately](https://minecraft.fandom.com/wiki
|
||||
|
||||
### Op/Administrator Players
|
||||
|
||||
Similar to the whitelist, users can be provisioned as operators (aka administrators) to your Minecraft server by
|
||||
Similar to the whitelist, to add users as operators (aka administrators) to your Minecraft server, you can:
|
||||
|
||||
- Providing a list of usernames and/or UUIDs separated by commas or newlines via the `OPS` environment variable
|
||||
- Providing the URL or container path to an ops file via `OPS_FILE` that will be retrieved/copied into the standard location
|
||||
- Provide a list of usernames and/or UUIDs separated by commas or newlines via the `OPS` environment variable
|
||||
- Provide the URL or container path to an ops file via `OPS_FILE` that will be retrieved/copied into the standard location
|
||||
|
||||
!!! example
|
||||
|
||||
@@ -102,19 +92,9 @@ Similar to the whitelist, users can be provisioned as operators (aka administrat
|
||||
user3
|
||||
```
|
||||
|
||||
To change the behavior when the ops file already exists, set the variable `EXISTING_OPS_FILE` to one of the following options:
|
||||
Use of `OPS_FILE` will **overwrite** an existing `ops.json` file; however, the option can be combined with `OPS` to refine the list.
|
||||
|
||||
`SKIP` (default)
|
||||
: Skip processing of the ops file when one is already present. This is the same as setting the legacy variable `OVERRIDE_OPS` to "false".
|
||||
|
||||
`SYNCHRONIZE`
|
||||
: Synchronize the list of users in the file with the `OPS` or `OPS_FILE` provided. When using both, `OPS` will take precedence. The `level` and `bypassesPlayerLimit` will be retained from previous entries. This is the same as setting the legacy variable `OVERRIDE_OPS` to "true".
|
||||
|
||||
`MERGE`
|
||||
: Merge the list of users from `OPS` into the existing file. `OPS_FILE` cannot be used with this option.
|
||||
|
||||
`SYNC_FILE_MERGE_LIST`
|
||||
: When `OPS_FILE` is provided it will overwrite an existing ops file. Also, if `OPS` is provided, then those users will be merged into the newly copied file.
|
||||
By default, `OPS` will keep the `ops.json` fully synchronized with the given list. All ops entries can be removed by setting `OPS` to an empty string. To only append new users, set `APPEND_OPS` to "true". New entries will be assigned [level 4](https://glimpse.me/blog/how-to-op-yourself-in-minecraft/) and not bypass player limit. Manual changes to those fields will be retained.
|
||||
|
||||
!!! note
|
||||
|
||||
|
||||
@@ -25,8 +25,3 @@ healthcheck:
|
||||
```
|
||||
|
||||
Some orchestration systems, such as Portainer, don't allow for disabling the default `HEALTHCHECK` declared by this image. In those cases you can approximate the disabling of healthchecks by setting the environment variable `DISABLE_HEALTHCHECK` to `true`.
|
||||
|
||||
### Healthchecks for older versions
|
||||
|
||||
This container disables Healthchecks for Versions before b1.8 as those versions do not support any kind of server pinging.
|
||||
For more information see [Server List Ping](https://wiki.vg/Server_List_Ping#Beta_1.8_to_1.3)
|
||||
|
||||
@@ -47,14 +47,16 @@ These paths work well if you want to have a common set of modules in a separate
|
||||
|
||||
## Zip file modpack
|
||||
|
||||
Like the `WORLD` option above, you can specify the URL or container path of a "mod pack" to download and install into `mods` for Forge/Fabric or `plugins` for Bukkit/Spigot. To use this option pass the environment variable `MODPACK`, such as
|
||||
Like the `WORLD` option above, you can specify the URL or path of a "mod pack"
|
||||
to download and install into `mods` for Forge/Fabric or `plugins` for Bukkit/Spigot.
|
||||
To use this option pass the environment variable `MODPACK`, such as
|
||||
|
||||
```shell
|
||||
docker run -d -e MODPACK=http://www.example.com/mods/modpack.zip ...
|
||||
```
|
||||
|
||||
!!! note
|
||||
The referenced URL/file must be a zip file with one or more jar files at the
|
||||
The referenced URL must be a zip file with one or more jar files at the
|
||||
top level of the zip archive. Make sure the jars are compatible with the
|
||||
particular `TYPE` of server you are running.
|
||||
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
## Extra options
|
||||
|
||||
`MODRINTH_DOWNLOAD_OPTIONAL_DEPENDENCIES`
|
||||
: Required dependencies of the project will _always_ be downloaded and optional dependencies can also be downloaded by setting this to `true`. The default is "true"
|
||||
: Required dependencies of the project will _always_ be downloaded and optional dependencies can also be downloaded by setting this to `true`. The default is "false".
|
||||
|
||||
`MODRINTH_ALLOWED_VERSION_TYPE`
|
||||
: The version type is used to determine the newest version to use from each project. The allowed values are `release` (default), `beta`, `alpha`.
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
mkdocs == 1.5.2
|
||||
mkdocs-material-extensions == 1.1.1
|
||||
mkdocs-material == 9.2.7
|
||||
mkdocs-autorefs == 0.5.0
|
||||
mkdocstrings == 0.23.0
|
||||
mkdocs-literate-nav == 0.6.0
|
||||
mdx-gh-links == 0.3.1
|
||||
mkdocs-click == 0.8.0
|
||||
mkdocs-static-i18n == 1.0.2
|
||||
mkdocs
|
||||
mkdocs-material-extensions
|
||||
mkdocs-material
|
||||
mkdocs-autorefs
|
||||
mkdocstrings
|
||||
mkdocs-literate-nav
|
||||
mdx-gh-links
|
||||
mkdocs-click
|
||||
mkdocs-static-i18n
|
||||
@@ -2,8 +2,7 @@ To use a different Minecraft version, pass the `VERSION` environment variable (c
|
||||
|
||||
- LATEST (the default)
|
||||
- SNAPSHOT
|
||||
- a specific version, such as "1.7.9"
|
||||
- or an alpha and beta version, such as "b1.7.3" (server download might not exist)
|
||||
- or a specific version, such as "1.7.9"
|
||||
|
||||
For example, to use the latest snapshot:
|
||||
|
||||
|
||||
13
mkdocs.yml
13
mkdocs.yml
@@ -1,12 +1,13 @@
|
||||
---
|
||||
site_name: Minecraft Server on Docker (Java Edition)
|
||||
site_url: https://docker-minecraft-server.readthedocs.io/en/latest/
|
||||
site_url: https://docker-minecraft-server.readthedocs.io/
|
||||
site_description: Documentation for Minecraft Server on Docker
|
||||
repo_url: https://github.com/itzg/docker-minecraft-server
|
||||
edit_uri: blob/master/docs/
|
||||
theme:
|
||||
name: material
|
||||
features:
|
||||
- navigation.instant
|
||||
- navigation.tracking
|
||||
- navigation.tabs
|
||||
- navigation.tabs.sticky
|
||||
@@ -53,6 +54,9 @@ copyright: Copyright © itzg 2023.
|
||||
plugins:
|
||||
- search
|
||||
- autorefs
|
||||
- literate-nav:
|
||||
nav_file: README.md
|
||||
implicit_index: true
|
||||
- mkdocstrings:
|
||||
handlers:
|
||||
python:
|
||||
@@ -64,11 +68,8 @@ plugins:
|
||||
show_signature_annotations: true
|
||||
# https://github.com/ultrabug/mkdocs-static-i18n
|
||||
- i18n:
|
||||
default_language: en
|
||||
languages:
|
||||
- locale: en
|
||||
en:
|
||||
name: English
|
||||
build: true
|
||||
default: true
|
||||
- literate-nav:
|
||||
nav_file: README.md
|
||||
implicit_index: true
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
: "${GID:=1000}"
|
||||
|
||||
umask 0002
|
||||
chmod g+w /data
|
||||
|
||||
if isTrue "${ENABLE_RCON:-true}" && ! [ -v RCON_PASSWORD ] && ! [ -v RCON_PASSWORD_FILE ]; then
|
||||
RCON_PASSWORD=$(openssl rand -hex 12)
|
||||
|
||||
@@ -221,11 +221,7 @@ function copyFilesForCurseForge() {
|
||||
cp -f /data/eula.txt "${FTB_DIR}/"
|
||||
}
|
||||
|
||||
if versionLessThan 'b1.8'; then
|
||||
echo "
|
||||
DISABLE_HEALTHCHECK=true
|
||||
" > /data/.mc-health.env
|
||||
elif versionLessThan 1.7; then
|
||||
if versionLessThan 1.7; then
|
||||
echo "
|
||||
MC_HEALTH_EXTRA_ARGS=(
|
||||
--use-server-list-ping
|
||||
|
||||
@@ -229,7 +229,7 @@ function handleGenericPacks() {
|
||||
|
||||
function handleModrinthProjects() {
|
||||
: "${MODRINTH_PROJECTS:=}"
|
||||
: "${MODRINTH_DOWNLOAD_OPTIONAL_DEPENDENCIES:=true}"
|
||||
: "${MODRINTH_DOWNLOAD_OPTIONAL_DEPENDENCIES:=false}"
|
||||
: "${MODRINTH_ALLOWED_VERSION_TYPE:=release}"
|
||||
|
||||
if [[ $MODRINTH_PROJECTS ]] && isFamily HYBRID FORGE FABRIC SPIGOT; then
|
||||
|
||||
@@ -2,21 +2,6 @@
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
|
||||
: "${EXISTING_OPS_FILE:=SKIP}"
|
||||
: "${EXISTING_WHITELIST_FILE:=SKIP}"
|
||||
|
||||
if [[ -v APPEND_OPS ]] && isTrue "${APPEND_OPS}"; then
|
||||
EXISTING_OPS_FILE=MERGE
|
||||
elif [[ -v OVERRIDE_OPS ]] && isTrue "${OVERRIDE_OPS}"; then
|
||||
EXISTING_OPS_FILE=SYNCHRONIZE
|
||||
fi
|
||||
|
||||
if [[ -v APPEND_WHITELIST ]] && isTrue "${APPEND_WHITELIST}"; then
|
||||
EXISTING_WHITELIST_FILE=MERGE
|
||||
elif [[ -v OVERRIDE_WHITELIST ]] && isTrue "${OVERRIDE_WHITELIST}"; then
|
||||
EXISTING_WHITELIST_FILE=SYNCHRONIZE
|
||||
fi
|
||||
|
||||
# shellcheck source=start-utils
|
||||
. "${SCRIPTS:-/}start-utils"
|
||||
isDebugging && set -x
|
||||
@@ -27,15 +12,10 @@ if isFalse "${ONLINE_MODE:-true}"; then
|
||||
fi
|
||||
|
||||
if [[ -v OPS_FILE ]]; then
|
||||
existing="$EXISTING_OPS_FILE"
|
||||
if [[ "$EXISTING_OPS_FILE" = SYNC_FILE_MERGE_LIST ]]; then
|
||||
existing=SYNCHRONIZE
|
||||
fi
|
||||
mc-image-helper manage-users \
|
||||
"${sharedArgs[@]}" \
|
||||
--type=JAVA_OPS \
|
||||
--input-is-file \
|
||||
--existing="${existing}" \
|
||||
"$OPS_FILE"
|
||||
fi
|
||||
if [[ -v OPS ]]; then
|
||||
@@ -43,44 +23,29 @@ if [[ -v OPS ]]; then
|
||||
if isTrue "${APPEND_OPS:-false}" || isFalse "${OVERRIDE_OPS:-true}"; then
|
||||
args+=(--append-only)
|
||||
fi
|
||||
existing="$EXISTING_OPS_FILE"
|
||||
if [[ "$EXISTING_OPS_FILE" = SYNC_FILE_MERGE_LIST ]]; then
|
||||
existing=MERGE
|
||||
fi
|
||||
# shellcheck disable=SC2086
|
||||
mc-image-helper manage-users \
|
||||
"${sharedArgs[@]}" "${args[@]}" \
|
||||
--type=JAVA_OPS \
|
||||
--existing="${existing}" \
|
||||
$OPS
|
||||
fi
|
||||
|
||||
if [[ -v WHITELIST_FILE ]]; then
|
||||
existing="$EXISTING_WHITELIST_FILE"
|
||||
if [[ "$EXISTING_WHITELIST_FILE" = SYNC_FILE_MERGE_LIST ]]; then
|
||||
existing=SYNCHRONIZE
|
||||
fi
|
||||
mc-image-helper manage-users \
|
||||
"${sharedArgs[@]}" \
|
||||
--type=JAVA_WHITELIST \
|
||||
--input-is-file \
|
||||
--existing="${existing}" \
|
||||
"$WHITELIST_FILE"
|
||||
"$WHITELIST_FILE"
|
||||
fi
|
||||
if [[ -v WHITELIST ]]; then
|
||||
args=()
|
||||
if isTrue "${APPEND_WHITELIST:-false}" || isFalse "${OVERRIDE_WHITELIST:-true}"; then
|
||||
args+=(--append-only)
|
||||
fi
|
||||
existing="$EXISTING_WHITELIST_FILE"
|
||||
if [[ "$EXISTING_WHITELIST_FILE" = SYNC_FILE_MERGE_LIST ]]; then
|
||||
existing=MERGE
|
||||
fi
|
||||
# shellcheck disable=SC2086
|
||||
mc-image-helper manage-users \
|
||||
"${sharedArgs[@]}" "${args[@]}" \
|
||||
--type=JAVA_WHITELIST \
|
||||
--existing="${existing}" \
|
||||
$WHITELIST
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user