WIP: changed project layout | added unified metrics
This commit is contained in:
parent
349a7cff3d
commit
f839fa454e
1
fallback/.gitignore
vendored
Normal file
1
fallback/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
/data
|
53
fallback/compose.yml
Normal file
53
fallback/compose.yml
Normal file
@ -0,0 +1,53 @@
|
||||
services:
|
||||
server:
|
||||
image: itzg/minecraft-server
|
||||
container_name: fallback
|
||||
restart: always
|
||||
environment:
|
||||
# What Server
|
||||
EULA: "true"
|
||||
TYPE: FABRIC
|
||||
VERSION: 1.21.1
|
||||
SERVER_NAME: uno
|
||||
ONLINE_MODE: false
|
||||
TZ: Europe/Berlin
|
||||
|
||||
# Server Properties
|
||||
OVERRIDE_SERVER_PROPERTIES: true
|
||||
ENABLE_COMMAND_BLOCK: true
|
||||
GAMEMODE: adventure
|
||||
FORCE_GAMEMODE: true
|
||||
|
||||
# RCON Setup
|
||||
RCON_PASSWORD: garde-studios
|
||||
BROADCAST_CONSOLE_TO_OPS: false
|
||||
BROADCAST_RCON_TO_OPS: true
|
||||
|
||||
# Setup
|
||||
FORCE_REDOWNLOAD: true
|
||||
#MEMORY: 2G
|
||||
INIT_MEMORY: 2G
|
||||
MAX_MEMORY: 4G
|
||||
USE_AIKAR_FLAGS: true
|
||||
|
||||
# World & Mod Data
|
||||
WORLD: https://file.cyperpunk.de/filebrowser/api/public/dl/4FDwjgd8/lobby.zip
|
||||
#SEED: 795488740
|
||||
MODS_FILE: /extras/mods.txt
|
||||
# Whitelisting Players
|
||||
WHITELIST_FILE: /extras/whitelist.json
|
||||
OVERRIDE_WHITELIST: true
|
||||
ENFORCE_WHITELIST: false
|
||||
|
||||
# Operator Setup
|
||||
OPS_FILE: /extras/ops.json
|
||||
SYNC_SKIP_NEWER_IN_DESTINATION: false
|
||||
ports:
|
||||
- 30000:25565 # Connection Port
|
||||
- 9000:25585 # Fabric Exporter
|
||||
volumes:
|
||||
- ./data:/data
|
||||
- ./mods.txt:/extras/mods.txt:ro
|
||||
- ./config:/config
|
||||
|
||||
networks: {}
|
18
fallback/mods.txt
Normal file
18
fallback/mods.txt
Normal file
@ -0,0 +1,18 @@
|
||||
# Fabric API
|
||||
https://cdn.modrinth.com/data/P7dR8mSH/versions/thGkUOxt/fabric-api-0.107.0%2B1.21.1.jar
|
||||
|
||||
# Performance
|
||||
https://cdn.modrinth.com/data/gvQqBUqZ/versions/5szYtenV/lithium-fabric-mc1.21.1-0.13.0.jar
|
||||
https://cdn.modrinth.com/data/fALzjamp/versions/dPliWter/Chunky-1.4.16.jar
|
||||
https://cdn.modrinth.com/data/s86X568j/versions/uT1cdd3k/ChunkyBorder-1.2.18.jar
|
||||
https://cdn.modrinth.com/data/LFJf0Klb/versions/7e8Rxgsk/ce-2.1.1.jar
|
||||
|
||||
# Proxy
|
||||
https://cdn.modrinth.com/data/8dI2tmqs/versions/AQhF7kvw/FabricProxy-Lite-2.9.0.jar
|
||||
|
||||
# Monitoring
|
||||
https://cdn.modrinth.com/data/dbVXHSlv/versions/YcE9H1C5/fabricexporter-1.0.11.jar
|
||||
https://cdn.modrinth.com/data/l6YH9Als/versions/qTSaozEL/spark-1.10.97-fabric.jar
|
||||
|
||||
# World Edit
|
||||
https://cdn.modrinth.com/data/1u6JkXh5/versions/vBzkrSYP/worldedit-mod-7.3.6.jar
|
1
main/.gitignore
vendored
Normal file
1
main/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
/data
|
4
main/config/FabricProxy-Lite.toml
Normal file
4
main/config/FabricProxy-Lite.toml
Normal file
@ -0,0 +1,4 @@
|
||||
hackOnlineMode = true
|
||||
hackEarlySend = false
|
||||
hackMessageChain = true
|
||||
secret = "CMhgx3vF17Nu"
|
14
main/config/unifiedmetrics/config.yml
Normal file
14
main/config/unifiedmetrics/config.yml
Normal file
@ -0,0 +1,14 @@
|
||||
server:
|
||||
name: "global"
|
||||
metrics:
|
||||
enabled: true
|
||||
driver: "prometheus"
|
||||
collectors:
|
||||
systemGc: true
|
||||
systemMemory: true
|
||||
systemProcess: true
|
||||
systemThread: true
|
||||
server: true
|
||||
world: true
|
||||
tick: true
|
||||
events: true
|
16
main/config/unifiedmetrics/driver/prometheus.yml
Normal file
16
main/config/unifiedmetrics/driver/prometheus.yml
Normal file
@ -0,0 +1,16 @@
|
||||
mode: "HTTP"
|
||||
http:
|
||||
host: "0.0.0.0"
|
||||
port: 9100
|
||||
authentication:
|
||||
scheme: "NONE"
|
||||
username: "username"
|
||||
password: "password"
|
||||
pushGateway:
|
||||
job: "unifiedmetrics"
|
||||
url: "http://pushgateway:9091"
|
||||
authentication:
|
||||
scheme: "NONE"
|
||||
username: "username"
|
||||
password: "password"
|
||||
interval: 10
|
@ -35,8 +35,8 @@ https://cdn.modrinth.com/data/LFJf0Klb/versions/7e8Rxgsk/ce-2.1.1.jar
|
||||
https://cdn.modrinth.com/data/8dI2tmqs/versions/AQhF7kvw/FabricProxy-Lite-2.9.0.jar
|
||||
|
||||
# Monitoring
|
||||
https://cdn.modrinth.com/data/dbVXHSlv/versions/YcE9H1C5/fabricexporter-1.0.11.jar
|
||||
https://cdn.modrinth.com/data/l6YH9Als/versions/qTSaozEL/spark-1.10.97-fabric.jar
|
||||
https://cdn.modrinth.com/data/Ha28R6CL/versions/B0fZidZi/fabric-language-kotlin-1.12.3%2Bkotlin.2.0.21.jar
|
||||
https://cdn.modrinth.com/data/p1ewR5kV/versions/xwRVtqbA/unifiedmetrics-platform-fabric-0.3.8.jar
|
||||
|
||||
# World Edit
|
||||
https://cdn.modrinth.com/data/1u6JkXh5/versions/vBzkrSYP/worldedit-mod-7.3.6.jar
|
32
main/ops.json
Normal file
32
main/ops.json
Normal file
@ -0,0 +1,32 @@
|
||||
[
|
||||
{
|
||||
"uuid": "61ec0d1b-0dc2-45bd-930e-ab45bcaa4386",
|
||||
"name": "Athro_Hiro",
|
||||
"level": 4,
|
||||
"bypassesPlayerLimit": false
|
||||
},
|
||||
{
|
||||
"uuid": "d3dd297f-0c08-45a0-8260-f1ac46af490a",
|
||||
"name": "Der_Grumpf",
|
||||
"level": 4,
|
||||
"bypassesPlayerLimit": false
|
||||
},
|
||||
{
|
||||
"uuid": "2f1de2e1-9fe8-457c-9a99-26c611fc6b64",
|
||||
"name": "mlgChaostom44",
|
||||
"level": 4,
|
||||
"bypassesPlayerLimit": false
|
||||
},
|
||||
{
|
||||
"uuid": "f42bbaa6-b2e7-4573-8092-13fbddf2544d",
|
||||
"name": "Deltayquaza",
|
||||
"level": 4,
|
||||
"bypassesPlayerLimit": false
|
||||
},
|
||||
{
|
||||
"uuid": "c76e4802-7f01-47cb-bc1b-16cadd736078",
|
||||
"name": "Weizenkumpel",
|
||||
"level": 4,
|
||||
"bypassesPlayerLimit": false
|
||||
}
|
||||
]
|
22
main/whitelist.json
Normal file
22
main/whitelist.json
Normal file
@ -0,0 +1,22 @@
|
||||
[
|
||||
{
|
||||
"uuid": "61ec0d1b-0dc2-45bd-930e-ab45bcaa4386",
|
||||
"name": "Athro_Hiro"
|
||||
},
|
||||
{
|
||||
"uuid": "d3dd297f-0c08-45a0-8260-f1ac46af490a",
|
||||
"name": "Der_Grumpf"
|
||||
},
|
||||
{
|
||||
"uuid": "9b0fa43a-9c43-45bc-8e36-c282e87a3c69",
|
||||
"name": "Keanu2010Profi"
|
||||
},
|
||||
{
|
||||
"uuid": "2f1de2e1-9fe8-457c-9a99-26c611fc6b64",
|
||||
"name": "mlgChaostom44"
|
||||
},
|
||||
{
|
||||
"uuid": "c76e4802-7f01-47cb-bc1b-16cadd736078",
|
||||
"name": "Weizenkumpel"
|
||||
}
|
||||
]
|
22
proxy/compose.yml
Normal file
22
proxy/compose.yml
Normal file
@ -0,0 +1,22 @@
|
||||
services:
|
||||
proxy:
|
||||
container_name: proxy
|
||||
image: itzg/mc-proxy
|
||||
environment:
|
||||
TYPE: VELOCITY
|
||||
DEBUG: false
|
||||
OVERRIDE_ICON: true
|
||||
VELOCITY_VERSION: latest
|
||||
VELOCITY_BUILD_ID: 450
|
||||
PLUGINS: https://cdn.modrinth.com/data/p1ewR5kV/versions/Dubg3nLw/unifiedmetrics-platform-velocity-0.3.8.jar
|
||||
volumes:
|
||||
- ./server-icon.png:/server/server-icon.png
|
||||
- ./velocity.toml:/config/velocity.toml:ro
|
||||
- ./forwarding.secret:/config/forwarding.secret:ro
|
||||
- ./unifiedmetrics:/plugins/unifiedmetrics
|
||||
- ./server:/server
|
||||
ports:
|
||||
- 25565:25565
|
||||
|
||||
volumes:
|
||||
proxy: {}
|
1
proxy/forwarding.secret
Normal file
1
proxy/forwarding.secret
Normal file
@ -0,0 +1 @@
|
||||
bGAJSlLeA4Wf
|
BIN
proxy/server-icon.png
Normal file
BIN
proxy/server-icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.7 KiB |
14
proxy/unifiedmetrics/config.yml
Normal file
14
proxy/unifiedmetrics/config.yml
Normal file
@ -0,0 +1,14 @@
|
||||
server:
|
||||
name: "global"
|
||||
metrics:
|
||||
enabled: true
|
||||
driver: "prometheus"
|
||||
collectors:
|
||||
systemGc: true
|
||||
systemMemory: true
|
||||
systemProcess: true
|
||||
systemThread: true
|
||||
server: true
|
||||
world: true
|
||||
tick: true
|
||||
events: true
|
16
proxy/unifiedmetrics/driver/prometheus.yml
Normal file
16
proxy/unifiedmetrics/driver/prometheus.yml
Normal file
@ -0,0 +1,16 @@
|
||||
mode: "HTTP"
|
||||
http:
|
||||
host: "0.0.0.0"
|
||||
port: 9100
|
||||
authentication:
|
||||
scheme: "NONE"
|
||||
username: "username"
|
||||
password: "password"
|
||||
pushGateway:
|
||||
job: "unifiedmetrics"
|
||||
url: "http://pushgateway:9091"
|
||||
authentication:
|
||||
scheme: "NONE"
|
||||
username: "username"
|
||||
password: "password"
|
||||
interval: 10
|
159
proxy/velocity.toml
Normal file
159
proxy/velocity.toml
Normal file
@ -0,0 +1,159 @@
|
||||
# Config version. Do not change this
|
||||
config-version = "2.7"
|
||||
|
||||
# What port should the proxy be bound to? By default, we'll bind to all addresses on port 25565.
|
||||
bind = "0.0.0.0:25565"
|
||||
|
||||
# What should be the MOTD? This gets displayed when the player adds your server to
|
||||
# their server list. Only MiniMessage format is accepted.
|
||||
motd = "<yellow>There is no </yellow><b><dark_purple>Garde Studios</dark_purple></b> <color:#1cff27>Minecraft Server</color><yellow>!</yellow>"
|
||||
|
||||
# What should we display for the maximum number of players? (Velocity does not support a cap
|
||||
# on the number of players online.)
|
||||
show-max-players = 20
|
||||
|
||||
# Should we authenticate players with Mojang? By default, this is on.
|
||||
online-mode = true
|
||||
|
||||
# Should the proxy enforce the new public key security standard? By default, this is on.
|
||||
force-key-authentication = true
|
||||
|
||||
# If client's ISP/AS sent from this proxy is different from the one from Mojang's
|
||||
# authentication server, the player is kicked. This disallows some VPN and proxy
|
||||
# connections but is a weak form of protection.
|
||||
prevent-client-proxy-connections = false
|
||||
|
||||
# Should we forward IP addresses and other data to backend servers?
|
||||
# Available options:
|
||||
# - "none": No forwarding will be done. All players will appear to be connecting
|
||||
# from the proxy and will have offline-mode UUIDs.
|
||||
# - "legacy": Forward player IPs and UUIDs in a BungeeCord-compatible format. Use this
|
||||
# if you run servers using Minecraft 1.12 or lower.
|
||||
# - "bungeeguard": Forward player IPs and UUIDs in a format supported by the BungeeGuard
|
||||
# plugin. Use this if you run servers using Minecraft 1.12 or lower, and are
|
||||
# unable to implement network level firewalling (on a shared host).
|
||||
# - "modern": Forward player IPs and UUIDs as part of the login process using
|
||||
# Velocity's native forwarding. Only applicable for Minecraft 1.13 or higher.
|
||||
player-info-forwarding-mode = "modern"
|
||||
|
||||
# If you are using modern or BungeeGuard IP forwarding, configure a file that contains a unique secret here.
|
||||
# The file is expected to be UTF-8 encoded and not empty.
|
||||
forwarding-secret-file = "forwarding.secret"
|
||||
|
||||
# Announce whether or not your server supports Forge. If you run a modded server, we
|
||||
# suggest turning this on.
|
||||
#
|
||||
# If your network runs one modpack consistently, consider using ping-passthrough = "mods"
|
||||
# instead for a nicer display in the server list.
|
||||
announce-forge = false
|
||||
|
||||
# If enabled (default is false) and the proxy is in online mode, Velocity will kick
|
||||
# any existing player who is online if a duplicate connection attempt is made.
|
||||
kick-existing-players = false
|
||||
|
||||
# Should Velocity pass server list ping requests to a backend server?
|
||||
# Available options:
|
||||
# - "disabled": No pass-through will be done. The velocity.toml and server-icon.png
|
||||
# will determine the initial server list ping response.
|
||||
# - "mods": Passes only the mod list from your backend server into the response.
|
||||
# The first server in your try list (or forced host) with a mod list will be
|
||||
# used. If no backend servers can be contacted, Velocity won't display any
|
||||
# mod information.
|
||||
# - "description": Uses the description and mod list from the backend server. The first
|
||||
# server in the try (or forced host) list that responds is used for the
|
||||
# description and mod list.
|
||||
# - "all": Uses the backend server's response as the proxy response. The Velocity
|
||||
# configuration is used if no servers could be contacted.
|
||||
ping-passthrough = "DISABLED"
|
||||
|
||||
# If not enabled (default is true) player IP addresses will be replaced by <ip address withheld> in logs
|
||||
enable-player-address-logging = true
|
||||
|
||||
[servers]
|
||||
# Configure your servers here. Each key represents the server's name, and the value
|
||||
# represents the IP address of the server to connect to.
|
||||
main = "100.80.35.55:30000"
|
||||
fallback = "localhost:30000"
|
||||
|
||||
|
||||
# In what order we should try servers when a player logs in or is kicked from a server.
|
||||
try = [
|
||||
"main",
|
||||
"fallback"
|
||||
]
|
||||
|
||||
[forced-hosts]
|
||||
# Configure your forced hosts here.
|
||||
"cloud.cyperpunk.de" = [
|
||||
"main"
|
||||
]
|
||||
|
||||
"garde-studios.de" = [
|
||||
"fallback"
|
||||
]
|
||||
|
||||
|
||||
[advanced]
|
||||
# How large a Minecraft packet has to be before we compress it. Setting this to zero will
|
||||
# compress all packets, and setting it to -1 will disable compression entirely.
|
||||
compression-threshold = 256
|
||||
|
||||
# How much compression should be done (from 0-9). The default is -1, which uses the
|
||||
# default level of 6.
|
||||
compression-level = -1
|
||||
|
||||
# How fast (in milliseconds) are clients allowed to connect after the last connection? By
|
||||
# default, this is three seconds. Disable this by setting this to 0.
|
||||
login-ratelimit = 3000
|
||||
|
||||
# Specify a custom timeout for connection timeouts here. The default is five seconds.
|
||||
connection-timeout = 5000
|
||||
|
||||
# Specify a read timeout for connections here. The default is 30 seconds.
|
||||
read-timeout = 30000
|
||||
|
||||
# Enables compatibility with HAProxy's PROXY protocol. If you don't know what this is for, then
|
||||
# don't enable it.
|
||||
haproxy-protocol = false
|
||||
|
||||
# Enables TCP fast open support on the proxy. Requires the proxy to run on Linux.
|
||||
tcp-fast-open = false
|
||||
|
||||
# Enables BungeeCord plugin messaging channel support on Velocity.
|
||||
bungee-plugin-message-channel = true
|
||||
|
||||
# Shows ping requests to the proxy from clients.
|
||||
show-ping-requests = false
|
||||
|
||||
# By default, Velocity will attempt to gracefully handle situations where the user unexpectedly
|
||||
# loses connection to the server without an explicit disconnect message by attempting to fall the
|
||||
# user back, except in the case of read timeouts. BungeeCord will disconnect the user instead. You
|
||||
# can disable this setting to use the BungeeCord behavior.
|
||||
failover-on-unexpected-server-disconnect = true
|
||||
|
||||
# Declares the proxy commands to 1.13+ clients.
|
||||
announce-proxy-commands = true
|
||||
|
||||
# Enables the logging of commands
|
||||
log-command-executions = true
|
||||
|
||||
# Enables logging of player connections when connecting to the proxy, switching servers
|
||||
# and disconnecting from the proxy.
|
||||
log-player-connections = true
|
||||
|
||||
# Allows players transferred from other hosts via the
|
||||
# Transfer packet (Minecraft 1.20.5) to be received.
|
||||
accepts-transfers = false
|
||||
|
||||
[query]
|
||||
# Whether to enable responding to GameSpy 4 query responses or not.
|
||||
enabled = true
|
||||
|
||||
# If query is enabled, on what port should the query protocol listen on?
|
||||
port = 25565
|
||||
|
||||
# This is the map name that is reported to the query services.
|
||||
map = "Mappie"
|
||||
|
||||
# Whether plugins should be shown in query response by default or not
|
||||
show-plugins = false
|
Loading…
Reference in New Issue
Block a user