forged-eggs/proxy/velocity/egg-velocity.json

105 lines
No EOL
14 KiB
JSON

{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PANEL",
"meta": {
"version": "PLCN_v3",
"update_url": "https://raw.githubusercontent.com/pelican-eggs/minecraft/refs/heads/main/proxy/java/velocity/egg-velocity.json"
},
"exported_at": "2026-04-21T19:02:00+00:00",
"name": "Velocity",
"author": "parker@parkervcp.com",
"uuid": "44d20b6d-0a20-4144-a96c-71d214b3c850",
"description": "Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility.",
"image": "data:image/png;base64,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",
"tags": [
"minecraft",
"proxy"
],
"features": [
"eula",
"java_version",
"pid_limit"
],
"docker_images": {
"Java 8": "ghcr.io/pelican-eggs/yolks:java_8",
"Java 11": "ghcr.io/pelican-eggs/yolks:java_11",
"Java 16": "ghcr.io/pelican-eggs/yolks:java_16",
"Java 17": "ghcr.io/pelican-eggs/yolks:java_17",
"Java 21": "ghcr.io/pelican-eggs/yolks:java_21",
"Java 25": "ghcr.io/pelican-eggs/yolks:java_25"
},
"file_denylist": [],
"startup_commands": {
"Default": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -XX:+UseG1GC -XX:G1HeapRegionSize=4M -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:MaxInlineLevel=15 -jar {{SERVER_JARFILE}}"
},
"config": {
"files": "{\n \"velocity.toml\": {\n \"parser\": \"file\",\n \"find\": {\n \"bind = \": \"bind = \\\"0.0.0.0:{{server.allocations.default.port}}\\\"\"\n }\n }\n}",
"startup": "{\n \"done\": \"Done (\"\n}",
"logs": "{}",
"stop": "end"
},
"scripts": {
"installation": {
"script": "#!/bin/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: /mnt/server\r\nPROJECT=velocity\r\n\r\nif [[ -z ${VELOCITY_VERSION} ]] || [[ ${VELOCITY_VERSION} == \"latest\" ]]; then\r\n VELOCITY_VERSION=\"latest\"\r\nfi\r\n\r\nif [[ -n \"${DOWNLOAD_LINK}\" ]]; then\r\n echo -e \"Using supplied download url: ${DOWNLOAD_LINK}\"\r\n DOWNLOAD_URL=$(eval echo $(echo ${DL_PATH} | sed -e 's/{{/${/g' -e 's/}}/}/g'))\r\nelse\r\n VER_EXISTS=`curl -s https://fill.papermc.io/v3/projects/${PROJECT} | jq -r --arg VERSION $VELOCITY_VERSION '.versions | any(.[]; index($VERSION))' | grep -m1 true`\r\n LATEST_VERSION=`curl -s https://fill.papermc.io/v3/projects/${PROJECT} | jq -r '.versions | to_entries | .[0].value[0]'`\r\n\r\nif [[ \"${VER_EXISTS}\" == \"true\" ]]; then\r\n echo -e \"Version is valid. Using version ${VELOCITY_VERSION}\"\r\nelse\r\n echo -e \"Using the latest ${PROJECT} version\"\r\n VELOCITY_VERSION=${LATEST_VERSION}\r\nfi\r\n\r\nBUILD_EXISTS=`curl -s https://fill.papermc.io/v3/projects/${PROJECT}/versions/${VELOCITY_VERSION} | jq -r --arg BUILD ${BUILD_NUMBER} '.builds[] | tostring | contains($BUILD)' | grep -m1 true`\r\nLATEST_BUILD=`curl -s https://fill.papermc.io/v3/projects/${PROJECT}/versions/${VELOCITY_VERSION} | jq -r '.builds' | jq -r '.[0]'`\r\n\r\nif [[ \"${BUILD_EXISTS}\" == \"true\" ]]; then\r\n echo -e \"Build is valid for version ${VELOCITY_VERSION}. Using build ${BUILD_NUMBER}\"\r\nelse\r\n echo -e \"Using the latest ${PROJECT} build for version ${VELOCITY_VERSION}\"\r\n BUILD_NUMBER=${LATEST_BUILD}\r\nfi\r\n\r\nJAR_NAME=${PROJECT}-${VELOCITY_VERSION}-${BUILD_NUMBER}.jar\r\necho \"Version being downloaded\"\r\necho -e \"Velocity Version: ${VELOCITY_VERSION}\"\r\necho -e \"Build: ${BUILD_NUMBER}\"\r\necho -e \"JAR Name of Build: ${JAR_NAME}\"\r\nDOWNLOAD_URL=`curl -s https://fill.papermc.io/v3/projects/${PROJECT}/versions/${VELOCITY_VERSION}/builds/${BUILD_NUMBER} | jq -r '.downloads.\"server:default\".url'`\r\n\r\nfi\r\n\r\ncd /mnt/server\r\necho -e \"Running curl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\"\r\n\r\nif [[ -f ${SERVER_JARFILE} ]]; then\r\nmv ${SERVER_JARFILE} ${SERVER_JARFILE}.old\r\nfi\r\n\r\ncurl -o ${SERVER_JARFILE} ${DOWNLOAD_URL}\r\n\r\nif [[ -f velocity.toml ]]; then\r\n echo -e \"velocity config file exists\"\r\nelse\r\n echo -e \"downloading velocity config file.\"\r\n curl https://raw.githubusercontent.com/parkervcp/eggs/master/game_eggs/minecraft/proxy/java/velocity/velocity.toml -o velocity.toml\r\nfi\r\n\r\nif [[ -f forwarding.secret ]]; then\r\n echo -e \"velocity forwarding secret file already exists\"\r\nelse\r\n echo -e \"creating forwarding secret file\"\r\n touch forwarding.secret\r\n date +%s | sha256sum | base64 | head -c 12 > forwarding.secret\r\nfi\r\n\r\necho -e \"install complete\"",
"container": "ghcr.io/pelican-eggs/installers:alpine",
"entrypoint": "ash"
}
},
"variables": [
{
"sort": 1,
"name": "Velocity Version",
"description": "The Velocity Proxy version to download.\r\n\r\nSet to 'latest ' the download the last stable build.",
"env_variable": "VELOCITY_VERSION",
"default_value": "latest",
"user_viewable": true,
"user_editable": false,
"rules": [
"required",
"string",
"max:20"
]
},
{
"sort": 2,
"name": "Server Jar File",
"description": "Server Jarfile, by default this is set to 'velocity.jar'.\r\nSet it to otherwise if you wish to have a different jarfile name.",
"env_variable": "SERVER_JARFILE",
"default_value": "velocity.jar",
"user_viewable": true,
"user_editable": false,
"rules": [
"required",
"string",
"max:32",
"regex:\/^([\\w\\d._-]+)(\\.jar)$\/"
]
},
{
"sort": 3,
"name": "Download Path",
"description": "A URL to use to download a server.jar rather than the ones in the install script. This is not user viewable.",
"env_variable": "DL_PATH",
"default_value": "",
"user_viewable": false,
"user_editable": false,
"rules": [
"nullable",
"string"
]
},
{
"sort": 4,
"name": "Build Number",
"description": "The build number for the velocity release.\r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.",
"env_variable": "BUILD_NUMBER",
"default_value": "latest",
"user_viewable": true,
"user_editable": true,
"rules": [
"required",
"string",
"max:20"
]
}
]
}