From caf7f3b4b372b409945e09bb1df3b71bd80772a5 Mon Sep 17 00:00:00 2001 From: DiscoverSquishy <26318936+DiscoverSquishy@users.noreply.github.com> Date: Sat, 21 Nov 2020 22:21:31 +0300 Subject: [PATCH 01/35] Updated Compatibility with Velocity 1.1.x --- .../proxy/java/velocity/egg-velocity.json | 18 +- minecraft/proxy/java/velocity/velocity.toml | 183 ++++++++++-------- 2 files changed, 115 insertions(+), 86 deletions(-) diff --git a/minecraft/proxy/java/velocity/egg-velocity.json b/minecraft/proxy/java/velocity/egg-velocity.json index b8c44495..f201603d 100644 --- a/minecraft/proxy/java/velocity/egg-velocity.json +++ b/minecraft/proxy/java/velocity/egg-velocity.json @@ -3,33 +3,33 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2019-07-14T20:36:29-04:00", + "exported_at": "2020-11-21T14:09:45-05:00", "name": "Velocity", "author": "parker@parkervcp.com", "description": "Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility.", + "features": null, "image": "quay.io\/pterodactyl\/core:java", "startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}", "config": { "files": "{\r\n \"velocity.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"bind = \": \"bind = \\\"0.0.0.0:{{server.build.default.port}}\\\"\"\r\n }\r\n }\r\n}", "startup": "{\r\n \"done\": \"Done (\"\r\n}", "logs": "{}", - "stop": "shutdown" + "stop": "end" }, "scripts": { "installation": { - "script": "#!\/bin\/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache curl\r\n\r\nmkdir -p \/mnt\/server\/\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z ${VELOCITY_VERSION} ] || [ ${VELOCITY_VERSION} == \"latest\" ]; then\r\n\tVELOCITY_VERSION=\/lastStableBuild\r\nfi\r\n\r\necho -e \"Getting download link\"\r\nDOWNLOAD_ENDPOINT=$(curl https:\/\/ci.velocitypowered.com\/job\/velocity\/${VELOCITY_VERSION}\/ | grep -Eo 'href=\"[^\\\"]+\"' | grep -vE \"view|fingerprint\" | grep \".jar\" | sed -n 's\/.*href=\"\\([^\"]*\\).*\/\\1\/p')\r\nDOWNLOAD_LINK=https:\/\/ci.velocitypowered.com\/job\/velocity\/lastStableBuild\/${DOWNLOAD_ENDPOINT}\r\n\r\necho -e \"Downloading ${DOWNLOAD_LINK}\"\r\ncurl ${DOWNLOAD_LINK} -o ${SERVER_JARFILE}\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\/minecraft\/proxy\/proxy\/velocity\/velocity.toml -o velocity.toml\r\nfi\r\n\r\necho -e \"install complete\"", + "script": "#!\/bin\/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache curl\r\n\r\nmkdir -p \/mnt\/server\/\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z ${VELOCITY_VERSION} ] || [ ${VELOCITY_VERSION} == \"latest\" ]; then\r\n\tVELOCITY_VERSION=\/latest\r\nfi\r\n\r\necho -e \"Getting download link\"\r\nDOWNLOAD_ENDPOINT=$(curl https:\/\/versions.velocitypowered.com\/download\/${VELOCITY_VERSION}\/ | grep -Eo 'href=\"[^\\\"]+\"' | grep -vE \"view|fingerprint\" | grep \".jar\" | sed -n 's\/.*href=\"\\([^\"]*\\).*\/\\1\/p')\r\nDOWNLOAD_LINK=https:\/\/versions.velocitypowered.com\/download\/${DOWNLOAD_ENDPOINT}\r\n\r\necho -e \"Downloading ${DOWNLOAD_LINK}\"\r\ncurl ${DOWNLOAD_LINK} -o ${SERVER_JARFILE}\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\/minecraft\/proxy\/proxy\/velocity\/velocity.toml -o velocity.toml\r\nfi\r\n\r\necho -e \"install complete\"", "container": "alpine:3.10", "entrypoint": "ash" } }, - "variables": [ - { + "variables": [{ "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": 1, - "user_editable": 0, + "user_viewable": true, + "user_editable": false, "rules": "required|string|max:20" }, { @@ -37,8 +37,8 @@ "description": "Server Jar File name", "env_variable": "SERVER_JARFILE", "default_value": "velocity.jar", - "user_viewable": 1, - "user_editable": 0, + "user_viewable": true, + "user_editable": false, "rules": "required|string|max:20" } ] diff --git a/minecraft/proxy/java/velocity/velocity.toml b/minecraft/proxy/java/velocity/velocity.toml index 1221a696..cc736d41 100644 --- a/minecraft/proxy/java/velocity/velocity.toml +++ b/minecraft/proxy/java/velocity/velocity.toml @@ -1,106 +1,135 @@ # Config version. Do not change this config-version = "1.0" - # What port should the proxy be bound to? By default, we'll bind to all addresses on port 25577. bind = "0.0.0.0:25577" - # What should be the MOTD? This gets displayed when the player adds your server to # their server list. Legacy color codes and JSON are accepted. motd = "&3A Velocity Server" - # 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 = 500 - # Should we authenticate players with Mojang? By default, this is on. online-mode = 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. -# - "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. +# - "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 = "NONE" - -# If you are using modern IP forwarding, configure an unique secret here. -forwarding-secret = "FrP42MxySW6Y" - +# If you are using modern or BungeeGuard IP forwarding, configure an unique secret here. +forwarding-secret = "pNuOOnPLzGd4" # 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" [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. -lobby = "127.0.0.1:30066" -minigames = "127.0.0.1:30068" -factions = "127.0.0.1:30067" - -# In what order we should try servers when a player logs in or is kicked from aserver. -try = [ - "lobby" -] + # Configure your servers here. Each key represents the server's name, and the value + # represents the IP address of the server to connect to. + lobby = "127.0.0.1:30066" + minigames = "127.0.0.1:30068" + # In what order we should try servers when a player logs in or is kicked from aserver. + try = ["lobby"] + factions = "127.0.0.1:30067" [forced-hosts] -# Configure your forced hosts here. -"minigames.example.com" = [ - "minigames" -] -"lobby.example.com" = [ - "lobby" -] -"factions.example.com" = [ - "factions" -] + "minigames.example.com" = ["minigames"] + # Configure your forced hosts here. + "lobby.example.com" = ["lobby"] + "factions.example.com" = ["factions"] [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. -proxy-protocol = false + # Specify a custom timeout for connection timeouts here. The default is five seconds. + connection-timeout = 5000 + # Enables BungeeCord plugin messaging channel support on Velocity. + bungee-plugin-message-channel = true + # Specify a read timeout for connections here. The default is 30 seconds. + read-timeout = 30000 + # Enables compatibility with HAProxy. + proxy-protocol = false + # Enables TCP fast open support on the proxy. Requires the proxy to run on Linux. + tcp-fast-open = false + # 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 + # How much compression should be done (from 0-9). The default is -1, which uses the + # default level of 6. + compression-level = -1 + # Declares the proxy commands to 1.13+ clients. + announce-proxy-commands = true + # Enables the logging of commands + log-command-executions = false + # 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 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 [query] -# Whether to enable responding to GameSpy 4 query responses or not. -enabled = false - -# If query is enabled, on what port should the query protocol listen on? -port = 25577 - -# This is the map name that is reported to the query services. -map = "Velocity" - -# Whether plugins should be shown in query response by default or not -show-plugins = false + # If query is enabled, on what port should the query protocol listen on? + port = 25577 + # Whether plugins should be shown in query response by default or not + show-plugins = false + # This is the map name that is reported to the query services. + map = "Velocity" + # Whether to enable responding to GameSpy 4 query responses or not. + enabled = false [metrics] -# Whether metrics will be reported to bStats (https://bstats.org). -# bStats collects some basic information, like how many people use Velocity and their -# player count. We recommend keeping bStats enabled, but if you're not comfortable with -# this, you can turn this setting off. There is no performance penalty associated with -# having metrics enabled, and data sent to bStats can't identify your server. -enabled = true - -# A unique, anonymous ID to identify this proxy with. -id = "b12f2e77-133c-4a5f-b288-d8833be3dc4d" - -log-failure = false + # A unique, anonymous ID to identify this proxy with. + id = "" + log-failure = false + # Whether metrics will be reported to bStats (https://bstats.org). + # bStats collects some basic information, like how many people use Velocity and their + # player count. We recommend keeping bStats enabled, but if you're not comfortable with + # this, you can turn this setting off. There is no performance penalty associated with + # having metrics enabled, and data sent to bStats can't identify your server. + enabled = true +# Legacy color codes and JSON are accepted in all messages. +[messages] + generic-connection-error = "&cAn internal error occurred in your connection." + already-connected = "&cYou are already connected to this proxy!" + online-mode-only = "&cThis server only accepts connections from online-mode clients.\n\n&7Did you change your username? Sign out of Minecraft, sign back in, and try again." + # Prefix when the player is disconnected from a server. + # First argument '%s': the server name + disconnect-prefix = "&cCan't connect to %s: " + no-available-servers = "&cThere are no available servers." + # Prefix when the player gets kicked from a server. + # First argument '%s': the server name + kick-prefix = "&cKicked from %s: " + moved-to-new-server-prefix = "&cThe server you were on kicked you: " \ No newline at end of file From 054b3e79c99658337aedc9cf7de952d2dde8a2da Mon Sep 17 00:00:00 2001 From: DiscoverSquishy <26318936+DiscoverSquishy@users.noreply.github.com> Date: Sun, 22 Nov 2020 09:51:01 +0300 Subject: [PATCH 02/35] Fixed download mechanism --- minecraft/proxy/java/velocity/egg-velocity.json | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/minecraft/proxy/java/velocity/egg-velocity.json b/minecraft/proxy/java/velocity/egg-velocity.json index f201603d..cc014c61 100644 --- a/minecraft/proxy/java/velocity/egg-velocity.json +++ b/minecraft/proxy/java/velocity/egg-velocity.json @@ -3,13 +3,13 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2020-11-21T14:09:45-05:00", + "exported_at": "2020-11-22T01:50:29-05:00", "name": "Velocity", "author": "parker@parkervcp.com", "description": "Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility.", "features": null, - "image": "quay.io\/pterodactyl\/core:java", - "startup": "java -Xms128M -Xmx{{SERVER_MEMORY}}M -jar {{SERVER_JARFILE}}", + "image": "quay.io\/discoversquishy\/dockerimages:openjdk-15-hostpot", + "startup": "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": "{\r\n \"velocity.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"bind = \": \"bind = \\\"0.0.0.0:{{server.build.default.port}}\\\"\"\r\n }\r\n }\r\n}", "startup": "{\r\n \"done\": \"Done (\"\r\n}", @@ -18,14 +18,15 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache curl\r\n\r\nmkdir -p \/mnt\/server\/\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z ${VELOCITY_VERSION} ] || [ ${VELOCITY_VERSION} == \"latest\" ]; then\r\n\tVELOCITY_VERSION=\/latest\r\nfi\r\n\r\necho -e \"Getting download link\"\r\nDOWNLOAD_ENDPOINT=$(curl https:\/\/versions.velocitypowered.com\/download\/${VELOCITY_VERSION}\/ | grep -Eo 'href=\"[^\\\"]+\"' | grep -vE \"view|fingerprint\" | grep \".jar\" | sed -n 's\/.*href=\"\\([^\"]*\\).*\/\\1\/p')\r\nDOWNLOAD_LINK=https:\/\/versions.velocitypowered.com\/download\/${DOWNLOAD_ENDPOINT}\r\n\r\necho -e \"Downloading ${DOWNLOAD_LINK}\"\r\ncurl ${DOWNLOAD_LINK} -o ${SERVER_JARFILE}\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\/minecraft\/proxy\/proxy\/velocity\/velocity.toml -o velocity.toml\r\nfi\r\n\r\necho -e \"install complete\"", + "script": "#!\/bin\/ash\r\n# Velocity Proxy Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add --no-cache curl\r\n\r\nmkdir -p \/mnt\/server\/\r\n\r\ncd \/mnt\/server\/\r\n\r\nif [ -z ${VELOCITY_VERSION} ] || [ ${VELOCITY_VERSION} == \"latest\" ]; then\r\n\tVELOCITY_VERSION=\"latest\"\r\nfi\r\n\r\necho -e \"Getting download link\"\r\nDOWNLOAD_LINK=https:\/\/versions.velocitypowered.com\/download\/${VELOCITY_VERSION}\r\n\r\necho -e \"Downloading ${DOWNLOAD_LINK}\"\r\ncurl ${DOWNLOAD_LINK} -o ${SERVER_JARFILE}\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\/minecraft\/proxy\/java\/velocity\/velocity.toml -o velocity.toml\r\nfi\r\n\r\necho -e \"install complete\"", "container": "alpine:3.10", "entrypoint": "ash" } }, - "variables": [{ + "variables": [ + { "name": "Velocity Version", - "description": "The Velocity Proxy version to download.\r\n\r\nset to 'latest ' the download the last stable build.", + "description": "The Velocity Proxy version to download.\r\n\r\nSet to 'latest ' the download the last stable build.\r\nSet to '1.1.x-SNAPSHOT' to get the latest dev build.", "env_variable": "VELOCITY_VERSION", "default_value": "latest", "user_viewable": true, @@ -34,7 +35,7 @@ }, { "name": "Server Jar File", - "description": "Server Jar File name", + "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, From 025588b2df933915064451d49f6ab56ce578584d Mon Sep 17 00:00:00 2001 From: DiscoverSquishy <26318936+DiscoverSquishy@users.noreply.github.com> Date: Sun, 22 Nov 2020 09:55:47 +0300 Subject: [PATCH 03/35] Tweaked some values Enabled TCP fast open as the container runs on debian. Cleared the forwarding secret, security measure. Renamed forwarding mode to LEGACY so users don't get the initial startup error, and would work out of the box. --- minecraft/proxy/java/velocity/velocity.toml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/minecraft/proxy/java/velocity/velocity.toml b/minecraft/proxy/java/velocity/velocity.toml index cc736d41..0e5741ac 100644 --- a/minecraft/proxy/java/velocity/velocity.toml +++ b/minecraft/proxy/java/velocity/velocity.toml @@ -25,12 +25,12 @@ prevent-client-proxy-connections = false # 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 = "NONE" +player-info-forwarding-mode = "legacy" # If you are using modern or BungeeGuard IP forwarding, configure an unique secret here. -forwarding-secret = "pNuOOnPLzGd4" +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 @@ -77,7 +77,7 @@ ping-passthrough = "DISABLED" # Enables compatibility with HAProxy. proxy-protocol = false # Enables TCP fast open support on the proxy. Requires the proxy to run on Linux. - tcp-fast-open = false + tcp-fast-open = 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 @@ -118,7 +118,7 @@ ping-passthrough = "DISABLED" # player count. We recommend keeping bStats enabled, but if you're not comfortable with # this, you can turn this setting off. There is no performance penalty associated with # having metrics enabled, and data sent to bStats can't identify your server. - enabled = true + enabled = false # Legacy color codes and JSON are accepted in all messages. [messages] From e4f31e91a6aaa1657d15c1c0058ad6de18a0f651 Mon Sep 17 00:00:00 2001 From: DiscoverSquishy <26318936+DiscoverSquishy@users.noreply.github.com> Date: Sun, 22 Nov 2020 19:38:50 +0300 Subject: [PATCH 04/35] Moved from my Quay Image --- minecraft/proxy/java/velocity/egg-velocity.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/minecraft/proxy/java/velocity/egg-velocity.json b/minecraft/proxy/java/velocity/egg-velocity.json index cc014c61..68a3f826 100644 --- a/minecraft/proxy/java/velocity/egg-velocity.json +++ b/minecraft/proxy/java/velocity/egg-velocity.json @@ -8,7 +8,7 @@ "author": "parker@parkervcp.com", "description": "Velocity is a Minecraft server proxy with unparalleled server support, scalability, and flexibility.", "features": null, - "image": "quay.io\/discoversquishy\/dockerimages:openjdk-15-hostpot", + "image": "quay.io\/parkervcp\/pterodactyl-images:adoptopenjdk-15-hotspot", "startup": "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": "{\r\n \"velocity.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"bind = \": \"bind = \\\"0.0.0.0:{{server.build.default.port}}\\\"\"\r\n }\r\n }\r\n}", From 71d17ccd00eb4ab7125a7b98b3750118efb4be84 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 20:02:38 -0500 Subject: [PATCH 05/35] Create minio.sh --- storage/minio.sh | 63 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 storage/minio.sh diff --git a/storage/minio.sh b/storage/minio.sh new file mode 100644 index 00000000..889c4f02 --- /dev/null +++ b/storage/minio.sh @@ -0,0 +1,63 @@ +#!/bin/bash +################################## +echo Starting up.... +echo "Startup Type: (normal/rotate)" +echo Detected $STARTUP_TYPE +if [ -f "key.txt" ]; then +echo "Key file detected..." +export MINIO_ACCESS_KEY=`cat key.txt` +else +echo minioadmin > key.txt +echo "No key file detected...Preparing First Time Boot" +fi +if [ -f "secret.txt" ]; then +echo "Secret file detected..." +export MINIO_SECRET_KEY=`cat secret.txt` +else +echo minioadmin > secret.txt +echo "No secret file detected...Preparing First Time Boot" +fi +if [ -f "oldsecret.txt" ]; then +echo "Old secret file detected..." +export MINIO_SECRET_KEY_OLD=`cat oldsecret.txt` +else +echo ".." +fi +if [ -f "oldkey.txt" ]; then +echo "Old key file detected..." +export MINIO_ACCESS_KEY_OLD=`cat oldkey.txt` +else +echo "......" +fi +if [ -f "justrotated.txt" ]; then +echo "Previous key rotation detected...." +echo "Clearing the Lanes...." +unset MINIO_ACCESS_KEY_OLD +unset MINIO_SECRET_KEY_OLD +STARTUP_TYPE=normal +rm justrotated.txt +rm oldsecret.txt +rm oldkey.txt +else +echo "......" +fi +########################################## +if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "rotate" ]; then +touch justrotated.txt +export MINIO_ACCESS_KEY_OLD=$MINIO_ACCESS_KEY +echo $MINIO_ACCESS_KEY_OLD > oldkey.txt +export MINIO_SECRET_KEY_OLD=$MINIO_SECRET_KEY +echo $MINIO_SECRET_KEY_OLD > oldsecret.txt +export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) +echo $MINIO_ACCESS_KEY > key.txt +export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) +echo $MINIO_SECRET_KEY > secret.txt +echo Your New Access Key is: $MINIO_ACCESS_KEY +echo Your New Secret Key is: $MINIO_SECRET_KEY +echo Your Old Access Key is: $MINIO_ACCESS_KEY_OLD +echo Your Old Access Key is: $MINIO_SECRET_KEY_OLD +echo Booting... +./minio server data --address 0.0.0.0:$SERVER_PORT +else +./minio server data --address 0.0.0.0:$SERVER_PORT +fi From ee4c054d27cc4f465a4e22b0ba865ea918b69ece Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 20:33:10 -0500 Subject: [PATCH 06/35] Cleaned up Key file locations Moved all keys to keys folder --- storage/minio.sh | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/storage/minio.sh b/storage/minio.sh index 889c4f02..97441d05 100644 --- a/storage/minio.sh +++ b/storage/minio.sh @@ -3,55 +3,55 @@ echo Starting up.... echo "Startup Type: (normal/rotate)" echo Detected $STARTUP_TYPE -if [ -f "key.txt" ]; then +if [ -f "keys/key.txt" ]; then echo "Key file detected..." -export MINIO_ACCESS_KEY=`cat key.txt` +export MINIO_ACCESS_KEY=`cat keys/key.txt` else -echo minioadmin > key.txt +echo minioadmin > keys/key.txt echo "No key file detected...Preparing First Time Boot" fi -if [ -f "secret.txt" ]; then +if [ -f "keys/secret.txt" ]; then echo "Secret file detected..." -export MINIO_SECRET_KEY=`cat secret.txt` +export MINIO_SECRET_KEY=`cat keys/secret.txt` else -echo minioadmin > secret.txt +echo minioadmin > keys/secret.txt echo "No secret file detected...Preparing First Time Boot" fi -if [ -f "oldsecret.txt" ]; then +if [ -f "keys/oldsecret.txt" ]; then echo "Old secret file detected..." -export MINIO_SECRET_KEY_OLD=`cat oldsecret.txt` +export MINIO_SECRET_KEY_OLD=`cat keys/oldsecret.txt` else echo ".." fi -if [ -f "oldkey.txt" ]; then +if [ -f "keys/oldkey.txt" ]; then echo "Old key file detected..." -export MINIO_ACCESS_KEY_OLD=`cat oldkey.txt` +export MINIO_ACCESS_KEY_OLD=`cat keys/oldkey.txt` else echo "......" fi -if [ -f "justrotated.txt" ]; then +if [ -f "keys/justrotated.txt" ]; then echo "Previous key rotation detected...." echo "Clearing the Lanes...." unset MINIO_ACCESS_KEY_OLD unset MINIO_SECRET_KEY_OLD STARTUP_TYPE=normal -rm justrotated.txt -rm oldsecret.txt -rm oldkey.txt +rm keys/justrotated.txt +rm keys/oldsecret.txt +rm keys/oldkey.txt else echo "......" fi ########################################## if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "rotate" ]; then -touch justrotated.txt +touch keys/justrotated.txt export MINIO_ACCESS_KEY_OLD=$MINIO_ACCESS_KEY -echo $MINIO_ACCESS_KEY_OLD > oldkey.txt +echo $MINIO_ACCESS_KEY_OLD > keys/oldkey.txt export MINIO_SECRET_KEY_OLD=$MINIO_SECRET_KEY -echo $MINIO_SECRET_KEY_OLD > oldsecret.txt +echo $MINIO_SECRET_KEY_OLD > keys/oldsecret.txt export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) -echo $MINIO_ACCESS_KEY > key.txt +echo $MINIO_ACCESS_KEY > keys/key.txt export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) -echo $MINIO_SECRET_KEY > secret.txt +echo $MINIO_SECRET_KEY > keys/secret.txt echo Your New Access Key is: $MINIO_ACCESS_KEY echo Your New Secret Key is: $MINIO_SECRET_KEY echo Your Old Access Key is: $MINIO_ACCESS_KEY_OLD From b42ff750d25306d2102803f1f9e5dbdc35b84933 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 20:46:17 -0500 Subject: [PATCH 07/35] Cleaned up startup --- storage/minio.sh | 6 ------ 1 file changed, 6 deletions(-) diff --git a/storage/minio.sh b/storage/minio.sh index 97441d05..ba131cb9 100644 --- a/storage/minio.sh +++ b/storage/minio.sh @@ -20,14 +20,10 @@ fi if [ -f "keys/oldsecret.txt" ]; then echo "Old secret file detected..." export MINIO_SECRET_KEY_OLD=`cat keys/oldsecret.txt` -else -echo ".." fi if [ -f "keys/oldkey.txt" ]; then echo "Old key file detected..." export MINIO_ACCESS_KEY_OLD=`cat keys/oldkey.txt` -else -echo "......" fi if [ -f "keys/justrotated.txt" ]; then echo "Previous key rotation detected...." @@ -38,8 +34,6 @@ STARTUP_TYPE=normal rm keys/justrotated.txt rm keys/oldsecret.txt rm keys/oldkey.txt -else -echo "......" fi ########################################## if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "rotate" ]; then From af8982f6c6213b88abd9a214d0e9add2ed498777 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 20:49:45 -0500 Subject: [PATCH 08/35] Cleaning up still --- storage/minio.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/storage/minio.sh b/storage/minio.sh index ba131cb9..48b5818e 100644 --- a/storage/minio.sh +++ b/storage/minio.sh @@ -1,8 +1,7 @@ #!/bin/bash ################################## echo Starting up.... -echo "Startup Type: (normal/rotate)" -echo Detected $STARTUP_TYPE +echo "Startup Type: $STARTUP_TYPE" if [ -f "keys/key.txt" ]; then echo "Key file detected..." export MINIO_ACCESS_KEY=`cat keys/key.txt` From b3275943ca5496f4bd0a16c75222192ac4367a12 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:30:39 -0500 Subject: [PATCH 09/35] Added Egg file --- storage/egg-minio-s3.json | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 storage/egg-minio-s3.json diff --git a/storage/egg-minio-s3.json b/storage/egg-minio-s3.json new file mode 100644 index 00000000..e7ce05de --- /dev/null +++ b/storage/egg-minio-s3.json @@ -0,0 +1,37 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2020-11-27T21:24:29-05:00", + "name": "Minio S3", + "author": "accounts@bofanodes.io", + "description": "MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.", + "features": null, + "image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu", + "startup": ".\/minio.sh", + "config": { + "files": "{}", + "startup": "{\r\n \"done\": \"guide\"\r\n}", + "logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}", + "stop": "^C" + }, + "scripts": { + "installation": { + "script": "#\r\n#\r\napt update\r\napt install -y wget\r\ncd \/mnt\/server\r\nwget https:\/\/dl.min.io\/server\/minio\/release\/linux-amd64\/minio\r\nchmod +x minio\r\nmkdir data\r\nmkdir keys\r\nwget https:\/\/github.com\/tmunsch\/eggs\/raw\/minio\/storage\/minio.sh\r\nchmod +x minio.sh\r\nexport MINIO_ACCESS_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_ACCESS_KEY > keys\/key.txt\r\nexport MINIO_SECRET_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_SECRET_KEY > keys\/secret.txt\r\necho done", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Startup Type", + "description": "normal or rotate", + "env_variable": "STARTUP_TYPE", + "default_value": "normal", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|in:normal,rotate" + } + ] +} \ No newline at end of file From 1fde6e08ea76f9ec5ec8fe653d6d4df71702363b Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:32:54 -0500 Subject: [PATCH 10/35] Create minio.sh --- storage/minio/minio.sh | 56 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 storage/minio/minio.sh diff --git a/storage/minio/minio.sh b/storage/minio/minio.sh new file mode 100644 index 00000000..48b5818e --- /dev/null +++ b/storage/minio/minio.sh @@ -0,0 +1,56 @@ +#!/bin/bash +################################## +echo Starting up.... +echo "Startup Type: $STARTUP_TYPE" +if [ -f "keys/key.txt" ]; then +echo "Key file detected..." +export MINIO_ACCESS_KEY=`cat keys/key.txt` +else +echo minioadmin > keys/key.txt +echo "No key file detected...Preparing First Time Boot" +fi +if [ -f "keys/secret.txt" ]; then +echo "Secret file detected..." +export MINIO_SECRET_KEY=`cat keys/secret.txt` +else +echo minioadmin > keys/secret.txt +echo "No secret file detected...Preparing First Time Boot" +fi +if [ -f "keys/oldsecret.txt" ]; then +echo "Old secret file detected..." +export MINIO_SECRET_KEY_OLD=`cat keys/oldsecret.txt` +fi +if [ -f "keys/oldkey.txt" ]; then +echo "Old key file detected..." +export MINIO_ACCESS_KEY_OLD=`cat keys/oldkey.txt` +fi +if [ -f "keys/justrotated.txt" ]; then +echo "Previous key rotation detected...." +echo "Clearing the Lanes...." +unset MINIO_ACCESS_KEY_OLD +unset MINIO_SECRET_KEY_OLD +STARTUP_TYPE=normal +rm keys/justrotated.txt +rm keys/oldsecret.txt +rm keys/oldkey.txt +fi +########################################## +if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "rotate" ]; then +touch keys/justrotated.txt +export MINIO_ACCESS_KEY_OLD=$MINIO_ACCESS_KEY +echo $MINIO_ACCESS_KEY_OLD > keys/oldkey.txt +export MINIO_SECRET_KEY_OLD=$MINIO_SECRET_KEY +echo $MINIO_SECRET_KEY_OLD > keys/oldsecret.txt +export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) +echo $MINIO_ACCESS_KEY > keys/key.txt +export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) +echo $MINIO_SECRET_KEY > keys/secret.txt +echo Your New Access Key is: $MINIO_ACCESS_KEY +echo Your New Secret Key is: $MINIO_SECRET_KEY +echo Your Old Access Key is: $MINIO_ACCESS_KEY_OLD +echo Your Old Access Key is: $MINIO_SECRET_KEY_OLD +echo Booting... +./minio server data --address 0.0.0.0:$SERVER_PORT +else +./minio server data --address 0.0.0.0:$SERVER_PORT +fi From 55dc57901dd3c02516e1be97c71ba193706913ca Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:33:35 -0500 Subject: [PATCH 11/35] Add files via upload --- storage/minio/egg-minio-s3.json | 37 +++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 storage/minio/egg-minio-s3.json diff --git a/storage/minio/egg-minio-s3.json b/storage/minio/egg-minio-s3.json new file mode 100644 index 00000000..e7ce05de --- /dev/null +++ b/storage/minio/egg-minio-s3.json @@ -0,0 +1,37 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2020-11-27T21:24:29-05:00", + "name": "Minio S3", + "author": "accounts@bofanodes.io", + "description": "MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.", + "features": null, + "image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu", + "startup": ".\/minio.sh", + "config": { + "files": "{}", + "startup": "{\r\n \"done\": \"guide\"\r\n}", + "logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}", + "stop": "^C" + }, + "scripts": { + "installation": { + "script": "#\r\n#\r\napt update\r\napt install -y wget\r\ncd \/mnt\/server\r\nwget https:\/\/dl.min.io\/server\/minio\/release\/linux-amd64\/minio\r\nchmod +x minio\r\nmkdir data\r\nmkdir keys\r\nwget https:\/\/github.com\/tmunsch\/eggs\/raw\/minio\/storage\/minio.sh\r\nchmod +x minio.sh\r\nexport MINIO_ACCESS_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_ACCESS_KEY > keys\/key.txt\r\nexport MINIO_SECRET_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_SECRET_KEY > keys\/secret.txt\r\necho done", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Startup Type", + "description": "normal or rotate", + "env_variable": "STARTUP_TYPE", + "default_value": "normal", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|in:normal,rotate" + } + ] +} \ No newline at end of file From 199e482a380e69d673b967a910dfcc93221908a3 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:34:55 -0500 Subject: [PATCH 12/35] Delete egg-minio-s3.json --- storage/egg-minio-s3.json | 37 ------------------------------------- 1 file changed, 37 deletions(-) delete mode 100644 storage/egg-minio-s3.json diff --git a/storage/egg-minio-s3.json b/storage/egg-minio-s3.json deleted file mode 100644 index e7ce05de..00000000 --- a/storage/egg-minio-s3.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", - "meta": { - "version": "PTDL_v1" - }, - "exported_at": "2020-11-27T21:24:29-05:00", - "name": "Minio S3", - "author": "accounts@bofanodes.io", - "description": "MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.", - "features": null, - "image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu", - "startup": ".\/minio.sh", - "config": { - "files": "{}", - "startup": "{\r\n \"done\": \"guide\"\r\n}", - "logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}", - "stop": "^C" - }, - "scripts": { - "installation": { - "script": "#\r\n#\r\napt update\r\napt install -y wget\r\ncd \/mnt\/server\r\nwget https:\/\/dl.min.io\/server\/minio\/release\/linux-amd64\/minio\r\nchmod +x minio\r\nmkdir data\r\nmkdir keys\r\nwget https:\/\/github.com\/tmunsch\/eggs\/raw\/minio\/storage\/minio.sh\r\nchmod +x minio.sh\r\nexport MINIO_ACCESS_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_ACCESS_KEY > keys\/key.txt\r\nexport MINIO_SECRET_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_SECRET_KEY > keys\/secret.txt\r\necho done", - "container": "debian:buster-slim", - "entrypoint": "bash" - } - }, - "variables": [ - { - "name": "Startup Type", - "description": "normal or rotate", - "env_variable": "STARTUP_TYPE", - "default_value": "normal", - "user_viewable": true, - "user_editable": true, - "rules": "required|string|in:normal,rotate" - } - ] -} \ No newline at end of file From 476c67e25dd193d93cd3e4e032e196091eb1dd17 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:35:03 -0500 Subject: [PATCH 13/35] Delete minio.sh --- storage/minio.sh | 56 ------------------------------------------------ 1 file changed, 56 deletions(-) delete mode 100644 storage/minio.sh diff --git a/storage/minio.sh b/storage/minio.sh deleted file mode 100644 index 48b5818e..00000000 --- a/storage/minio.sh +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/bash -################################## -echo Starting up.... -echo "Startup Type: $STARTUP_TYPE" -if [ -f "keys/key.txt" ]; then -echo "Key file detected..." -export MINIO_ACCESS_KEY=`cat keys/key.txt` -else -echo minioadmin > keys/key.txt -echo "No key file detected...Preparing First Time Boot" -fi -if [ -f "keys/secret.txt" ]; then -echo "Secret file detected..." -export MINIO_SECRET_KEY=`cat keys/secret.txt` -else -echo minioadmin > keys/secret.txt -echo "No secret file detected...Preparing First Time Boot" -fi -if [ -f "keys/oldsecret.txt" ]; then -echo "Old secret file detected..." -export MINIO_SECRET_KEY_OLD=`cat keys/oldsecret.txt` -fi -if [ -f "keys/oldkey.txt" ]; then -echo "Old key file detected..." -export MINIO_ACCESS_KEY_OLD=`cat keys/oldkey.txt` -fi -if [ -f "keys/justrotated.txt" ]; then -echo "Previous key rotation detected...." -echo "Clearing the Lanes...." -unset MINIO_ACCESS_KEY_OLD -unset MINIO_SECRET_KEY_OLD -STARTUP_TYPE=normal -rm keys/justrotated.txt -rm keys/oldsecret.txt -rm keys/oldkey.txt -fi -########################################## -if [ -z "$STARTUP_TYPE" ] || [ "$STARTUP_TYPE" == "rotate" ]; then -touch keys/justrotated.txt -export MINIO_ACCESS_KEY_OLD=$MINIO_ACCESS_KEY -echo $MINIO_ACCESS_KEY_OLD > keys/oldkey.txt -export MINIO_SECRET_KEY_OLD=$MINIO_SECRET_KEY -echo $MINIO_SECRET_KEY_OLD > keys/oldsecret.txt -export MINIO_ACCESS_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) -echo $MINIO_ACCESS_KEY > keys/key.txt -export MINIO_SECRET_KEY=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1) -echo $MINIO_SECRET_KEY > keys/secret.txt -echo Your New Access Key is: $MINIO_ACCESS_KEY -echo Your New Secret Key is: $MINIO_SECRET_KEY -echo Your Old Access Key is: $MINIO_ACCESS_KEY_OLD -echo Your Old Access Key is: $MINIO_SECRET_KEY_OLD -echo Booting... -./minio server data --address 0.0.0.0:$SERVER_PORT -else -./minio server data --address 0.0.0.0:$SERVER_PORT -fi From 971cd784642aacb3232fb946965ef28395cdd80f Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:39:18 -0500 Subject: [PATCH 14/35] Delete egg-minio-s3.json --- storage/minio/egg-minio-s3.json | 37 --------------------------------- 1 file changed, 37 deletions(-) delete mode 100644 storage/minio/egg-minio-s3.json diff --git a/storage/minio/egg-minio-s3.json b/storage/minio/egg-minio-s3.json deleted file mode 100644 index e7ce05de..00000000 --- a/storage/minio/egg-minio-s3.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", - "meta": { - "version": "PTDL_v1" - }, - "exported_at": "2020-11-27T21:24:29-05:00", - "name": "Minio S3", - "author": "accounts@bofanodes.io", - "description": "MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.", - "features": null, - "image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu", - "startup": ".\/minio.sh", - "config": { - "files": "{}", - "startup": "{\r\n \"done\": \"guide\"\r\n}", - "logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}", - "stop": "^C" - }, - "scripts": { - "installation": { - "script": "#\r\n#\r\napt update\r\napt install -y wget\r\ncd \/mnt\/server\r\nwget https:\/\/dl.min.io\/server\/minio\/release\/linux-amd64\/minio\r\nchmod +x minio\r\nmkdir data\r\nmkdir keys\r\nwget https:\/\/github.com\/tmunsch\/eggs\/raw\/minio\/storage\/minio.sh\r\nchmod +x minio.sh\r\nexport MINIO_ACCESS_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_ACCESS_KEY > keys\/key.txt\r\nexport MINIO_SECRET_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_SECRET_KEY > keys\/secret.txt\r\necho done", - "container": "debian:buster-slim", - "entrypoint": "bash" - } - }, - "variables": [ - { - "name": "Startup Type", - "description": "normal or rotate", - "env_variable": "STARTUP_TYPE", - "default_value": "normal", - "user_viewable": true, - "user_editable": true, - "rules": "required|string|in:normal,rotate" - } - ] -} \ No newline at end of file From e1d9bb1fbcbc15f292be6b768479e540745aebc8 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:39:36 -0500 Subject: [PATCH 15/35] Add files via upload --- storage/minio/egg-minio-s3.json | 37 +++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 storage/minio/egg-minio-s3.json diff --git a/storage/minio/egg-minio-s3.json b/storage/minio/egg-minio-s3.json new file mode 100644 index 00000000..246cf00f --- /dev/null +++ b/storage/minio/egg-minio-s3.json @@ -0,0 +1,37 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2020-11-27T21:39:14-05:00", + "name": "Minio S3", + "author": "accounts@bofanodes.io", + "description": "MinIO is a cloud storage server compatible with Amazon S3, released under Apache License v2. As an object store, MinIO can store unstructured data such as photos, videos, log files, backups and container images. The maximum size of an object is 5TB.", + "features": null, + "image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu", + "startup": ".\/minio.sh", + "config": { + "files": "{}", + "startup": "{\r\n \"done\": \"guide\"\r\n}", + "logs": "{\r\n \"custom\": false,\r\n \"location\": \"logs\/latest.log\"\r\n}", + "stop": "^C" + }, + "scripts": { + "installation": { + "script": "#\r\n#\r\napt update\r\napt install -y wget\r\ncd \/mnt\/server\r\nwget https:\/\/dl.min.io\/server\/minio\/release\/linux-amd64\/minio\r\nchmod +x minio\r\nmkdir data\r\nmkdir keys\r\nwget https:\/\/github.com\/tmunsch\/eggs\/raw\/minio\/storage\/minio\/minio.sh\r\nchmod +x minio.sh\r\nexport MINIO_ACCESS_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_ACCESS_KEY > keys\/key.txt\r\nexport MINIO_SECRET_KEY=$(cat \/dev\/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)\r\necho $MINIO_SECRET_KEY > keys\/secret.txt\r\necho done", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Startup Type", + "description": "normal or rotate", + "env_variable": "STARTUP_TYPE", + "default_value": "normal", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|in:normal,rotate" + } + ] +} \ No newline at end of file From c9040395ca572285a462002001c941bbe832399d Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:42:59 -0500 Subject: [PATCH 16/35] Added storage for s3 minio --- README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 8fcfa050..b59d6471 100644 --- a/README.md +++ b/README.md @@ -174,4 +174,8 @@ If you are reading this it looks like you are looking to add an egg to your serv [Xonotic](/xonotic/xonotic/) -[Cryofall](/cryofall/) \ No newline at end of file +[Cryofall](/cryofall/) + +## [Storage](/storage/) +### S3 Storage +* [minio](/storage/minio) From 413f221b6b74f8f53ce2f3e1d7baed9af124ce2a Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:46:27 -0500 Subject: [PATCH 17/35] Create README.md --- storage/minio/README.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 storage/minio/README.md diff --git a/storage/minio/README.md b/storage/minio/README.md new file mode 100644 index 00000000..a3751189 --- /dev/null +++ b/storage/minio/README.md @@ -0,0 +1,8 @@ +# minio s3 + +## Known Issues +Double encryption may occur if you manually manipulate files in the /keys directory + +##Required Server Ports + +#### Key rotation is handled automatically, DO NOT manually delete files in /keys From eed9c06a7e3994a6d581784b3738564805484743 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:47:12 -0500 Subject: [PATCH 18/35] Update README.md --- storage/minio/README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/storage/minio/README.md b/storage/minio/README.md index a3751189..eb3f0eae 100644 --- a/storage/minio/README.md +++ b/storage/minio/README.md @@ -3,6 +3,4 @@ ## Known Issues Double encryption may occur if you manually manipulate files in the /keys directory -##Required Server Ports - #### Key rotation is handled automatically, DO NOT manually delete files in /keys From 4e4d9898adab27c605b1bc326055520a0ae30308 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:52:58 -0500 Subject: [PATCH 19/35] Update README.md --- storage/minio/README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/storage/minio/README.md b/storage/minio/README.md index eb3f0eae..1983fcbe 100644 --- a/storage/minio/README.md +++ b/storage/minio/README.md @@ -1,6 +1,22 @@ # minio s3 +## Features +Auto generate keys on server creation bypassing default minio keys + + +Automatic Key rotation using "rotate" startup feature + +## Auto Rotate +It's possible to rotate your keys by changing the startup option to "rotate" + + +Once this is changed restart your server and it will automatically move your current keys to old and create your new keys + + +Be sure to change your startup back to "normal" once you have started your server using "rotate". This will ensure that you don't accidentally rotate your keys twice + ## Known Issues + Double encryption may occur if you manually manipulate files in the /keys directory #### Key rotation is handled automatically, DO NOT manually delete files in /keys From ed3159b34bc79bd6268758cd044ad7a88698c3a0 Mon Sep 17 00:00:00 2001 From: tmunsch Date: Fri, 27 Nov 2020 21:53:36 -0500 Subject: [PATCH 20/35] Update README.md --- storage/minio/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/storage/minio/README.md b/storage/minio/README.md index 1983fcbe..da88976a 100644 --- a/storage/minio/README.md +++ b/storage/minio/README.md @@ -17,6 +17,6 @@ Be sure to change your startup back to "normal" once you have started your serve ## Known Issues -Double encryption may occur if you manually manipulate files in the /keys directory +Double encryption may occur if you manually manipulate files in the keys directory -#### Key rotation is handled automatically, DO NOT manually delete files in /keys +#### Key rotation is handled automatically, DO NOT manually delete files in keys directory From 49bbc4720a2a5140e2fabe7849569c54781e78f6 Mon Sep 17 00:00:00 2001 From: Torsten Widmann Date: Sat, 5 Dec 2020 10:35:17 +0100 Subject: [PATCH 21/35] Update TeaSpeak Egg to be able to install latest Beta --- voice_servers/teaspeak/egg-tea-speak.json | 29 ++++++++++++----------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/voice_servers/teaspeak/egg-tea-speak.json b/voice_servers/teaspeak/egg-tea-speak.json index fe395b61..beb3707a 100644 --- a/voice_servers/teaspeak/egg-tea-speak.json +++ b/voice_servers/teaspeak/egg-tea-speak.json @@ -3,10 +3,11 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2020-03-28T13:50:13-04:00", + "exported_at": "2020-12-05T10:34:29+01:00", "name": "TeaSpeak", "author": "parker@parkervcp.com", "description": "TeaSpeak is a free to use client and server software for VoIP communication.\r\n\r\nIts the ideal deal software for everyone who is annoyed about limits and restrictions.", + "features": null, "image": "quay.io\/parkervcp\/pterodactyl-images:base_debian", "startup": ".\/TeaSpeakServer --property:binding.query.port={{QUERY_PORT}} --property:binding.file.port={{FILE_PORT}} --property:voice.default_port={{SERVER_PORT}}", "config": { @@ -17,7 +18,7 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n \r\n## install required packages\r\napt update\r\napt upgrade -y\r\napt install curl -y\r\n\r\n## make and change to directory\r\nmkdir \/mnt\/server\r\ncd \/mnt\/server\/\r\n\r\n## get download link\r\nif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/latest).tar.gz\")\r\nelse\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-${VERSION}.tar.gz\")\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\n## download files\r\necho -e \"running: curl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\r\n\r\n## unpack files\r\necho -e \"unpacking files\"\r\ntar xzvf teaspeak.tar.gz\r\n\r\necho -e \"install complete\"", + "script": "#!\/bin\/bash\r\n \r\n## install required packages\r\napt update\r\napt upgrade -y\r\napt install curl -y\r\n\r\n## make and change to directory\r\nmkdir \/mnt\/server\r\ncd \/mnt\/server\/\r\n\r\n## get download link\r\nif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/latest).tar.gz\")\r\nelif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"beta\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/latest).tar.gz\")\r\nelse\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-${VERSION}.tar.gz\")\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\n## download files\r\necho -e \"running: curl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\r\n\r\n## unpack files\r\necho -e \"unpacking files\"\r\ntar xzvf teaspeak.tar.gz\r\n\r\necho -e \"install complete\"", "container": "debian:buster-slim", "entrypoint": "bash" } @@ -28,8 +29,8 @@ "description": "The query port for TeaSpeak", "env_variable": "QUERY_PORT", "default_value": "10101", - "user_viewable": 1, - "user_editable": 1, + "user_viewable": true, + "user_editable": true, "rules": "required|numeric|max:65535" }, { @@ -37,8 +38,8 @@ "description": "The TeaSpeak File Transfer Port", "env_variable": "FILE_PORT", "default_value": "30303", - "user_viewable": 1, - "user_editable": 1, + "user_viewable": true, + "user_editable": true, "rules": "required|numeric|max:65535" }, { @@ -46,8 +47,8 @@ "description": "The TeaSpeak Server MOTD", "env_variable": "SERVER_MOTD", "default_value": "TeaSpeak\\n\\rHosted on pterodactyl!", - "user_viewable": 1, - "user_editable": 1, + "user_viewable": true, + "user_editable": true, "rules": "required|string|max:128" }, { @@ -55,8 +56,8 @@ "description": "Don't touch this if you want the server to start", "env_variable": "LD_LIBRARY_PATH", "default_value": ".\/libs\/", - "user_viewable": 0, - "user_editable": 0, + "user_viewable": false, + "user_editable": false, "rules": "required|string" }, { @@ -64,8 +65,8 @@ "description": "Don't touch this if you want the server to start", "env_variable": "LD_PRELOAD", "default_value": ".\/libs\/libjemalloc.so.2", - "user_viewable": 0, - "user_editable": 0, + "user_viewable": false, + "user_editable": false, "rules": "required|string" }, { @@ -73,8 +74,8 @@ "description": "What version of teaspeak to install", "env_variable": "VERSION", "default_value": "latest", - "user_viewable": 1, - "user_editable": 1, + "user_viewable": true, + "user_editable": true, "rules": "required|string|max:20" } ] From 46767f0bbfa5cd703f8e9f86b8476240f9a32d95 Mon Sep 17 00:00:00 2001 From: Torsten Widmann Date: Sat, 5 Dec 2020 11:42:29 +0100 Subject: [PATCH 22/35] updated description --- voice_servers/teaspeak/egg-tea-speak.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/voice_servers/teaspeak/egg-tea-speak.json b/voice_servers/teaspeak/egg-tea-speak.json index beb3707a..b58a23ec 100644 --- a/voice_servers/teaspeak/egg-tea-speak.json +++ b/voice_servers/teaspeak/egg-tea-speak.json @@ -3,7 +3,7 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2020-12-05T10:34:29+01:00", + "exported_at": "2020-12-05T11:42:04+01:00", "name": "TeaSpeak", "author": "parker@parkervcp.com", "description": "TeaSpeak is a free to use client and server software for VoIP communication.\r\n\r\nIts the ideal deal software for everyone who is annoyed about limits and restrictions.", @@ -71,7 +71,7 @@ }, { "name": "Teaspeak Version", - "description": "What version of teaspeak to install", + "description": "What version of teaspeak to install: latest = latest stable ; beta = latest beta", "env_variable": "VERSION", "default_value": "latest", "user_viewable": true, From c3ec1c1a7c34a76568ee4ba287ee8eb09734c373 Mon Sep 17 00:00:00 2001 From: Alex <11708877+acl1704@users.noreply.github.com> Date: Tue, 8 Dec 2020 13:48:21 -0800 Subject: [PATCH 23/35] update mohist for new instllation process --- minecraft/java/mohist/README.MD | 7 ++++- minecraft/java/mohist/egg-mohist.json | 37 +++++++++++++++++---------- 2 files changed, 29 insertions(+), 15 deletions(-) diff --git a/minecraft/java/mohist/README.MD b/minecraft/java/mohist/README.MD index 48a79d05..825d5523 100644 --- a/minecraft/java/mohist/README.MD +++ b/minecraft/java/mohist/README.MD @@ -12,4 +12,9 @@ The minecraft server requires a single port for access (default 25565) but plugi ## Server Specific -Limited to version 1.12.2 (1.16.4 cannot run headless as of 12/6/2020) \ No newline at end of file +### Supported versions: +- 1.16.4 series build 132+ +- 1.12.x series +- 1.7.x series build 13+ + +Requires changing Minecraft_Version variable on each new Minecraft version release. \ No newline at end of file diff --git a/minecraft/java/mohist/egg-mohist.json b/minecraft/java/mohist/egg-mohist.json index c21f35de..73027301 100644 --- a/minecraft/java/mohist/egg-mohist.json +++ b/minecraft/java/mohist/egg-mohist.json @@ -3,7 +3,7 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2020-12-06T02:04:44-08:00", + "exported_at": "2020-12-08T11:59:05-08:00", "name": "Mohist", "author": "alex.chang-lam@protonmail.com", "description": "Spigot fork with performance optimizations.", @@ -18,34 +18,43 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n# Mohistmc Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napt update\r\napt install -y curl\r\n\r\ncd \/mnt\/server\r\n\r\ncurl -sSL \"https:\/\/mohistmc.com\/api\/${MINECRAFT_VERSION}\/${BUILD_NUMBER}\/download\" -o ${SERVER_JARFILE}", + "script": "#!\/bin\/bash\r\n# Mohist Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl\r\n\r\n#Go into main direction\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir \/mnt\/server\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\nif [ ! -z ${BUILD_VERSION} ]; then\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_VERSION}\/download\r\n \r\n #Downloading jars\r\n echo -e \"Download link is ${DOWNLOAD_LINK}\"\r\n echo -e \"Downloading build version ${BUILD_VERSION}\"\r\n if [ ! -z \"${DOWNLOAD_LINK}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}-server.jar; then\r\n echo -e \"Download link is valid.\"\r\n else\r\n echo -e \"Link is invalid closing out\"\r\n exit 2\r\n fi\r\n fi\r\n\r\n curl -s -o server.jar -sS ${DOWNLOAD_LINK}\r\n\r\n #Checking if downloaded jars exist\r\n if [ ! -f .\/server.jar ]; then\r\n echo \"!!! Error downloading build version ${BUILD_VERSION} !!!\"\r\n exit\r\n fi\r\nelse\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_TYPE}\/download\r\n\r\n #Downloading jars\r\n echo -e \"Download link is ${DOWNLOAD_LINK}\"\r\n echo -e \"Downloading ${BUILD_TYPE} build version\"\r\n if [ ! -z \"${DOWNLOAD_LINK}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}-server.jar; then\r\n echo -e \"Download link is valid.\"\r\n else\r\n echo -e \"Link is invalid closing out\"\r\n exit 2\r\n fi\r\n fi\r\n\r\n curl -s -o server.jar -sS ${DOWNLOAD_LINK}\r\n\r\n #Checking if downloaded jars exist\r\n if [ ! -f .\/server.jar ]; then\r\n echo \"!!! Error downloading ${BUILD_TYPE} build !!!\"\r\n exit\r\n fi\r\nfi", "container": "debian:buster-slim", "entrypoint": "bash" } }, "variables": [ - { - "name": "Minecraft Version", - "description": "The version of minecraft to download. \r\n\r\nInvalid versions will default to 1.12.2.", - "env_variable": "MINECRAFT_VERSION", - "default_value": "1.12.2", - "user_viewable": true, - "user_editable": true, - "rules": "nullable|string|max:20" - }, { "name": "Server Jar File", - "description": "The name of the server jarfile to run the server with.", + "description": "The name of the jarfile to run the server with.", "env_variable": "SERVER_JARFILE", "default_value": "server.jar", "user_viewable": true, "user_editable": false, "rules": "required|string|max:20" }, + { + "name": "Minecraft Version", + "description": "The version of Minecraft to download.", + "env_variable": "MC_VERSION", + "default_value": "1.16.4", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:20" + }, { "name": "Build Number", - "description": "The build number for the Mohist release.\r\n\r\nLeave at latest to always get the latest version. Invalid versions will default to latest.", - "env_variable": "BUILD_NUMBER", + "description": "Optional: \r\nThe build number for the Mohist release. Overrides Build Type.", + "env_variable": "BUILD_VERSION", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string|max:20" + }, + { + "name": "Build Type", + "description": "The type of server jar to download from Mohist.\r\n\r\nValid types are \"recommended\" and \"latest\".", + "env_variable": "BUILD_TYPE", "default_value": "latest", "user_viewable": true, "user_editable": true, From e5577c7ce4e7a3de89c0bca39be4c0ae2de3cf32 Mon Sep 17 00:00:00 2001 From: Torsten Widmann Date: Sun, 13 Dec 2020 17:00:49 +0100 Subject: [PATCH 24/35] rename beta to nightly --- voice_servers/teaspeak/egg-tea-speak.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/voice_servers/teaspeak/egg-tea-speak.json b/voice_servers/teaspeak/egg-tea-speak.json index b58a23ec..af92f78e 100644 --- a/voice_servers/teaspeak/egg-tea-speak.json +++ b/voice_servers/teaspeak/egg-tea-speak.json @@ -3,7 +3,7 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2020-12-05T11:42:04+01:00", + "exported_at": "2020-12-13T16:59:05+01:00", "name": "TeaSpeak", "author": "parker@parkervcp.com", "description": "TeaSpeak is a free to use client and server software for VoIP communication.\r\n\r\nIts the ideal deal software for everyone who is annoyed about limits and restrictions.", @@ -18,7 +18,7 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n \r\n## install required packages\r\napt update\r\napt upgrade -y\r\napt install curl -y\r\n\r\n## make and change to directory\r\nmkdir \/mnt\/server\r\ncd \/mnt\/server\/\r\n\r\n## get download link\r\nif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/latest).tar.gz\")\r\nelif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"beta\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/latest).tar.gz\")\r\nelse\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-${VERSION}.tar.gz\")\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\n## download files\r\necho -e \"running: curl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\r\n\r\n## unpack files\r\necho -e \"unpacking files\"\r\ntar xzvf teaspeak.tar.gz\r\n\r\necho -e \"install complete\"", + "script": "#!\/bin\/bash\r\n \r\n## install required packages\r\napt update\r\napt upgrade -y\r\napt install curl -y\r\n\r\n## make and change to directory\r\nmkdir \/mnt\/server\r\ncd \/mnt\/server\/\r\n\r\n## get download link\r\nif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/latest).tar.gz\")\r\nelif [ \"${VERSION}\" == \"\" ] || [ \"${VERSION}\" == \"nightly\" ]; then\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/TeaSpeak-$(curl -sSLk https:\/\/repo.teaspeak.de\/server\/linux\/amd64_nightly\/latest).tar.gz\")\r\nelse\r\n DOWNLOAD_URL=$(echo \"https:\/\/repo.teaspeak.de\/server\/linux\/amd64\/TeaSpeak-${VERSION}.tar.gz\")\r\nfi\r\n\r\nif [ ! -z \"${DOWNLOAD_URL}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_URL}; then\r\n echo -e \"link is valid. setting download link to ${DOWNLOAD_URL}\"\r\n DOWNLOAD_LINK=${DOWNLOAD_URL}\r\n else \r\n echo -e \"link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\n## download files\r\necho -e \"running: curl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\"\r\ncurl -sSL -o teaspeak.tar.gz ${DOWNLOAD_LINK}\r\n\r\n## unpack files\r\necho -e \"unpacking files\"\r\ntar xzvf teaspeak.tar.gz\r\n\r\necho -e \"install complete\"", "container": "debian:buster-slim", "entrypoint": "bash" } @@ -71,7 +71,7 @@ }, { "name": "Teaspeak Version", - "description": "What version of teaspeak to install: latest = latest stable ; beta = latest beta", + "description": "What version of teaspeak to install: latest = latest stable ; nightly = latest nightly", "env_variable": "VERSION", "default_value": "latest", "user_viewable": true, From ab5467ab3815fffe47e45411138cc2df4fb853ef Mon Sep 17 00:00:00 2001 From: Softwarenoob Date: Sun, 13 Dec 2020 22:56:31 +0200 Subject: [PATCH 25/35] restructure ftb --- minecraft/java/ftb/README.md | 11 +++++++++++ .../egg-ftb-modpacksch-server.json | 0 .../egg-f-t-b-revelation.json | 0 .../egg-feed-the-beast.json | 0 4 files changed, 11 insertions(+) create mode 100644 minecraft/java/ftb/README.md rename minecraft/java/ftb/{feed-the-beast => }/egg-ftb-modpacksch-server.json (100%) rename minecraft/java/ftb/{ftb-revelation => outdated}/egg-f-t-b-revelation.json (100%) rename minecraft/java/ftb/{feed-the-beast => outdated}/egg-feed-the-beast.json (100%) diff --git a/minecraft/java/ftb/README.md b/minecraft/java/ftb/README.md new file mode 100644 index 00000000..9901b1cd --- /dev/null +++ b/minecraft/java/ftb/README.md @@ -0,0 +1,11 @@ +# Feed The Beast Modpacks + +Allows you to download official feed the beast modpacks. + +## Server Ports +The minecraft server requires a single port for access (default 25565) but some plugins may require extra ports to enabled for the server. + + +| Port | default | +|-------|---------| +| Game | 25565 | \ No newline at end of file diff --git a/minecraft/java/ftb/feed-the-beast/egg-ftb-modpacksch-server.json b/minecraft/java/ftb/egg-ftb-modpacksch-server.json similarity index 100% rename from minecraft/java/ftb/feed-the-beast/egg-ftb-modpacksch-server.json rename to minecraft/java/ftb/egg-ftb-modpacksch-server.json diff --git a/minecraft/java/ftb/ftb-revelation/egg-f-t-b-revelation.json b/minecraft/java/ftb/outdated/egg-f-t-b-revelation.json similarity index 100% rename from minecraft/java/ftb/ftb-revelation/egg-f-t-b-revelation.json rename to minecraft/java/ftb/outdated/egg-f-t-b-revelation.json diff --git a/minecraft/java/ftb/feed-the-beast/egg-feed-the-beast.json b/minecraft/java/ftb/outdated/egg-feed-the-beast.json similarity index 100% rename from minecraft/java/ftb/feed-the-beast/egg-feed-the-beast.json rename to minecraft/java/ftb/outdated/egg-feed-the-beast.json From 28d935aa0b8fb2fc6860f3760eeb518f850005ba Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 13 Dec 2020 22:59:53 +0200 Subject: [PATCH 26/35] remove outdated ftb eggs --- minecraft/java/README.md | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/minecraft/java/README.md b/minecraft/java/README.md index 63a337cc..2e4dd186 100644 --- a/minecraft/java/README.md +++ b/minecraft/java/README.md @@ -24,13 +24,7 @@ This is a direct fork of the default forge service A generic service to pull forge mod packs from the curseforge site. ## FTB Packs -[FTB](https://www.feed-the-beast.com/modpacks) -A generic service to pull forge mod packs from the FTB site. -Supply values to 2 variables to use -- MODPACK_URL: from the url to the pack https://www.feed-the-beast.com/projects/{MODPACK_URL} -- MODPACK_VERSION: version of the modpack to install - -[FTB Modpacks through modpacks.ch](https://api.modpacks.ch) +[FTB Modpacks](https://api.modpacks.ch) A generic service to pull FTB modpacks from api.modpacks.ch. There are 2 ways to install a server through this service. The first method only requires you to know the modpacks name and version. @@ -51,10 +45,7 @@ The second method requires you to know the id for both the modpack and version i **NOTE** **Not all FTB packs come with a server.properties file, due to this the server.properties file may not get updated with the correct ip address and port at first launch. -Please restart the server after first launch to fix this.** - -[FTB Revelation](https://www.feed-the-beast.com/projects/ftb-revelation) -Revelation is a general all-purpose modpack with optimal FPS, server performance and stability. +Please restart the server after first launch to fix this.** ## Magma [Magma](https://magmafoundation.org/) @@ -97,4 +88,4 @@ Fork of Paper aimed at improving server performance at high playercounts. ## Mohist Fork of Spigot focused on performance optimizations. -[Mohist Github](https://github.com/Mohist-Community) \ No newline at end of file +[Mohist Github](https://github.com/Mohist-Community) From 009db6c2fb09b8f331f3197b72644e90e38691e3 Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 13 Dec 2020 23:01:00 +0200 Subject: [PATCH 27/35] Include FTB instructions --- minecraft/java/ftb/README.md | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/minecraft/java/ftb/README.md b/minecraft/java/ftb/README.md index 9901b1cd..7b8ac5ac 100644 --- a/minecraft/java/ftb/README.md +++ b/minecraft/java/ftb/README.md @@ -1,6 +1,26 @@ -# Feed The Beast Modpacks +## FTB Packs +[FTB Modpacks](https://api.modpacks.ch) +A generic service to pull FTB modpacks from api.modpacks.ch. +There are 2 ways to install a server through this service. +The first method only requires you to know the modpacks name and version. +The second method requires you to know the id for both the modpack and version in the api. -Allows you to download official feed the beast modpacks. +**Method 1 (Recommended)** +- FTB_SEARCH_TERM: the modpack name to query for, must be at least 4 characters long. + EX: for FTB: Interactions you would do "interactions". +- FTB_VERSION_STRING: the string version that you want to install. + EX: for FTB: Interactions 2.0.2, you would put "2.0.2". + +**Method 2** +- FTB_MODPACK_ID: the id that directs to the modpack in the api. + EX: for FTB: Interactions the id would be "5". https://api.modpacks.ch/public/modpack/5 +- FTB_MODPACK_VERSION_ID: the version id in the api. + EX: for FTB: Interactions 2.0.2 the id is "86". https://api.modpacks.ch/public/modpack/5/86 + +**NOTE** +**Not all FTB packs come with a server.properties file, due to this the server.properties file +may not get updated with the correct ip address and port at first launch. +Please restart the server after first launch to fix this.** ## Server Ports The minecraft server requires a single port for access (default 25565) but some plugins may require extra ports to enabled for the server. @@ -8,4 +28,5 @@ The minecraft server requires a single port for access (default 25565) but some | Port | default | |-------|---------| -| Game | 25565 | \ No newline at end of file +| Game | 25565 | + From d248cd83a378589225eb50b4abbdd3a10bac0f8e Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 13 Dec 2020 23:02:25 +0200 Subject: [PATCH 28/35] update text --- minecraft/java/ftb/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/minecraft/java/ftb/README.md b/minecraft/java/ftb/README.md index 7b8ac5ac..cce1799e 100644 --- a/minecraft/java/ftb/README.md +++ b/minecraft/java/ftb/README.md @@ -1,5 +1,4 @@ -## FTB Packs -[FTB Modpacks](https://api.modpacks.ch) +## FTB Modpacks A generic service to pull FTB modpacks from api.modpacks.ch. There are 2 ways to install a server through this service. The first method only requires you to know the modpacks name and version. From 359cc6c35d155f2453197f8089b27d1102169be6 Mon Sep 17 00:00:00 2001 From: Softwarenoob Date: Mon, 14 Dec 2020 01:07:25 +0200 Subject: [PATCH 29/35] added the_forest egg --- steamcmd_servers/the_forest/README.md | 31 +++++ .../the_forest/egg-the-forest.json | 109 ++++++++++++++++++ 2 files changed, 140 insertions(+) create mode 100644 steamcmd_servers/the_forest/README.md create mode 100644 steamcmd_servers/the_forest/egg-the-forest.json diff --git a/steamcmd_servers/the_forest/README.md b/steamcmd_servers/the_forest/README.md new file mode 100644 index 00000000..cce1799e --- /dev/null +++ b/steamcmd_servers/the_forest/README.md @@ -0,0 +1,31 @@ +## FTB Modpacks +A generic service to pull FTB modpacks from api.modpacks.ch. +There are 2 ways to install a server through this service. +The first method only requires you to know the modpacks name and version. +The second method requires you to know the id for both the modpack and version in the api. + +**Method 1 (Recommended)** +- FTB_SEARCH_TERM: the modpack name to query for, must be at least 4 characters long. + EX: for FTB: Interactions you would do "interactions". +- FTB_VERSION_STRING: the string version that you want to install. + EX: for FTB: Interactions 2.0.2, you would put "2.0.2". + +**Method 2** +- FTB_MODPACK_ID: the id that directs to the modpack in the api. + EX: for FTB: Interactions the id would be "5". https://api.modpacks.ch/public/modpack/5 +- FTB_MODPACK_VERSION_ID: the version id in the api. + EX: for FTB: Interactions 2.0.2 the id is "86". https://api.modpacks.ch/public/modpack/5/86 + +**NOTE** +**Not all FTB packs come with a server.properties file, due to this the server.properties file +may not get updated with the correct ip address and port at first launch. +Please restart the server after first launch to fix this.** + +## Server Ports +The minecraft server requires a single port for access (default 25565) but some plugins may require extra ports to enabled for the server. + + +| Port | default | +|-------|---------| +| Game | 25565 | + diff --git a/steamcmd_servers/the_forest/egg-the-forest.json b/steamcmd_servers/the_forest/egg-the-forest.json new file mode 100644 index 00000000..1126a01a --- /dev/null +++ b/steamcmd_servers/the_forest/egg-the-forest.json @@ -0,0 +1,109 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2020-12-14T01:03:24+02:00", + "name": "The Forest", + "author": "admin@softwarenoob.com", + "description": "As the lone survivor of a passenger jet crash, you find yourself in a mysterious forest battling to stay alive against a society of cannibalistic mutants. Build, explore, survive in this terrifying first-person survival horror simulator.", + "features": null, + "image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu_wine-xvfb", + "startup": ".\/start.sh -serverip {{SERVER_IP}}:{{QUERY_PORT} -serversteamport {{STEAM_PORT}} -servergameport {{SERVER_PORT}} -serverqueryport {{QUERY_PORT}} -servername \"{{SERVER_NAME}}\" -serverplayers {{MAX_PLAYERS}} -difficulty {{SERVER_DIFFICULTY}}", + "config": { + "files": "{\r\n \"\/TheForestDedicatedServer_Data\/forest\/config\/config.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"serverIP\": \"serverIP {{server.build.default.ip}}:{{server.build.env.QUERY_PORT}}\",\r\n \"serverSteamPort\": \"serverSteamPort {{server.build.env.STEAM_PORT}}\",\r\n \"serverGamePort\": \"serverGamePort {{server.build.default.port}}\",\r\n \"serverName\": \"serverName {{server.build.env.SERVER_NAME}}\",\r\n \"serverPlayers\": \"serverPlayers {{server.build.env.MAX_PLAYERS}}\",\r\n \"serverPassword\": \"serverPassword {{server.build.env.SERVER_PASS}}\",\r\n \"serverPasswordAdmin\": \"serverPasswordAdmin {{server.build.env.ADMIN_PASS}}\",\r\n \"serverSteamAccount\": \"serverSteamAccount {{server.build.env.STEAM_ACC}}\",\r\n \"difficulty\": \"difficulty {{server.build.env.SERVER_DIFFICULTY}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Game autosave started\"\r\n}", + "logs": "{}", + "stop": "^C" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\n# Installation Script\r\n#\r\n# Install dependencies\r\napt update\r\napt -y --no-install-recommends install curl unzip libstdc++6 lib32gcc1 ca-certificates\r\n\r\n\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## Install game using steamcmd\r\n.\/steamcmd.sh +login anonymous +@sSteamCmdForcePlatformType windows +force_install_dir \/mnt\/server +app_update ${APPID} ${EXTRA_FLAGS} validate +quit\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\n## Configure wine and server startup config\r\nmkdir -p \/home\/container\/.wine64\r\necho \"#!\/bin\/sh\r\nexport WINEARCH=win64\r\nexport WINEPREFIX=\/home\/container\/.wine64\r\nxvfb-run --auto-servernum --server-args='-screen 0 640x480x24:32' wine64 \/home\/container\/TheForestDedicatedServer.exe -batchmode -nographics -nosteamclient -savefolderpath \/home\/container\/TheForestDedicatedServer_Data -configfilepath \/home\/container\/TheForestDedicatedServer_Data\/forest\/config\/config.cfg |grep -v 'RenderTexture.Create failed: format unsupported - 2.'\" > \/mnt\/server\/start.sh\r\nchmod +x \/mnt\/server\/start.sh", + "container": "ubuntu:18.04", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "APP ID", + "description": "The ID corresponding to the game to download.", + "env_variable": "APPID", + "default_value": "556450", + "user_viewable": false, + "user_editable": false, + "rules": "required|numeric|digits_between:1,6" + }, + { + "name": "Server Name", + "description": "Name of the server, appears in Steam browser.", + "env_variable": "SERVER_NAME", + "default_value": "Pterodactyl Forest Server", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:64" + }, + { + "name": "Steam Port", + "description": "Steam port", + "env_variable": "STEAM_PORT", + "default_value": "8766", + "user_viewable": true, + "user_editable": false, + "rules": "required|string|max:20" + }, + { + "name": "Query Port", + "description": "Query port, this port is also used for connecting to the server", + "env_variable": "QUERY_PORT", + "default_value": "27016", + "user_viewable": true, + "user_editable": false, + "rules": "required|string|max:20" + }, + { + "name": "Max Players", + "description": "Server player cap", + "env_variable": "MAX_PLAYERS", + "default_value": "10", + "user_viewable": true, + "user_editable": false, + "rules": "required|string|max:20" + }, + { + "name": "Difficulty", + "description": "Server difficulty setting, Peaceful, Normal or Hard.", + "env_variable": "SERVER_DIFFICULTY", + "default_value": "Normal", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|in:Peaceful,Normal,Hard" + }, + { + "name": "Steam Account Token", + "description": "The Steam Account Token is required for the server to save player progress. Use APP ID 242760 for the token generation. \r\n\r\nYou can generate the token on steam at https:\/\/steamcommunity.com\/dev\/managegameservers", + "env_variable": "STEAM_ACC", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string" + }, + { + "name": "Server Password", + "description": "Password protects the server if set, any player must enter the password to join", + "env_variable": "SERVER_PASS", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string|max:20" + }, + { + "name": "Admin Password", + "description": "A password that will be used to gain admin access to the server in-game", + "env_variable": "ADMIN_PASS", + "default_value": "cHanGetHePaSwWord", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:20" + } + ] +} \ No newline at end of file From e7a6007c1b0546f1019674af9a30d656c7486de0 Mon Sep 17 00:00:00 2001 From: Softwarenoob Date: Mon, 14 Dec 2020 01:16:13 +0200 Subject: [PATCH 30/35] add the_forest to readme files --- steamcmd_servers/README.md | 222 +++++++++++++++++++++++++++---------- 1 file changed, 164 insertions(+), 58 deletions(-) diff --git a/steamcmd_servers/README.md b/steamcmd_servers/README.md index 4c11cd3b..bb7d1cfd 100644 --- a/steamcmd_servers/README.md +++ b/steamcmd_servers/README.md @@ -1,86 +1,192 @@ -# steamcmd servers +# Parkers Pterodactyl eggs repo -This is a collection of servers that use steamcmd to install. +I am working on adding a large collection of public eggs for the Pterodactyl community. -## 7 Days To Die -[7dtd](7_days_to_die/) +With that I am also accepting PR's for new services and also updates to the current ones. -## ARK -[ark](ark_survival_evolved/) +If you are submitting PR's try and keep names and titles the same. -## ARMA -[arma](arma/) -* [arma 3](arma/arma3/) -* [arma 3 headless](arma/arma3_headless_client/) +## How to import an egg -## Avorion -[avorion](avorion/) +If you are reading this it looks like you are looking to add an egg to your server. -## Citadel: Forged with Fire -[citadel](citadel/) +1. Download any of the json files located in the folders below. + 1. It's easiest to right click the `raw` button and save as. +2. In your panel go to the `Nests` section in the admin part of the panel +3. Click the green `Import Egg` button +4. Browse to the json file you saved earlier +5. Select what nest you want to put the egg in. + 1. If you want a new nest you need to create it before importing the egg. +6. Restart the daemon on your node before creating a server using the new egg(s). -## Conan Exiles -[conan_exiles](conan_exiles/) +# You must restart your daemon after importing an egg -## Don't Starve -[dont_starve](dont_starve/) -## ECO -[ECO](eco/) +## Please read the CONTRIBUTING.md before submitting PRs -## HLDS Server -[hlds](hlds_server/) +## [Bots](/bots) -## Holdfast -[holdfast](holdfast/) +[Discord](/bots/discord) +* [ATL Bot](/bots/discord/atlbot) Node JS +* [Bastion](/bots/discord/bastion) +* [CorpBot](/bots/discord/corpbot) Python +* [discord.js](bots/discord/discord.js) Node JS generic +* [discord.py](bots/discord/discord.py) Python generic +* [discordgo](bots/discord/discordgo) golang generic +* [fragbot](/bots/discord/fragbot) Golang +* [jmusicbot](/bots/discord/jmusicbot) Java +* [parkertron](/bots/discord/parkertron) Golang +* [pixel-bot](/bots/discord/pixelbot) Python +* [Red](/bots/discord/redbot) Python +* [Sinusbot](/bots/discord/sinusbot) -## Hurtworld -[hurtworld](hurtworld/) +* [Twitch](/bots/twitch) + * [PhantomBot](/bots/twitch/phantombot) + * [sogeBot](/bots/twitch/sogebot) -## Insurgency: Sandstorm -[Insurgency: Sandstorm](insurgency_sandstorm/) +[Other](/bots/other) +* [Big Brother Bot](/bots/other/bigbrotherbot) -## Mordhau -[mordhau](mordhau/) +* [TeamSpeak3](bots/teamspeak3) + * [JTS3ServerMod](/bots/teamspeak3/jts3servermod) -## Onset -[onset](onset/) +## [Database](/database) +### In-Memory Databases +[Redis](/database/redis) +* [Redis 5](/database/redis/redis-5) +* [Redis 6](/database/redis/redis-6) -## Project Zomboid -[project_zomboid](project_zomboid/) +### noSQL +* [mongoDB](/database/nosql/mongodb) -## Rising World -[rising_world](rising_world/) +### SQL Databases +* [MariaDB](/database/sql/mariadb) +* [PostgreSQL](/database/sql/postgres) -## Rust Staging -[rust staging](rust_staging/) +## Voice Servers +* [Lavalink](/voice_servers/lavalink) +* [TeaSpeak](/voice_servers/teaspeak) +* [TS3-Manager](/voice_servers/ts3_manager) -## SCP: Secret Laboratory -[SCP: Secret Laboratory](/scpsl/) +## Game Eggs +[Among Us Impostor Server](/among_us/impostor_server) -## Soldat -[soldat](soldat/) +[ET Legacy](/enemy_territory/etlegacy) -## Squad -[squad](squad/) +[Factorio](/factorio/factorio) -## Starbound -[starbound](starbound/) +[Grand Theft Auto](/gta) +* GTA V + * [FiveM](/gta/fivem) + * [RageMP](/gta/ragemp) + * [alt:V](/gta/altv) +* GTA SA + * [Multi Theft Auto](/gta/mtasa) + * [SA-MP](/gta/samp) -## Stationeers -[Stationeers](/steamcmd_servers/stationeers/) +[Mindustry](/mindustry) -## Stormworks: Build and Rescue -[Stormworks](/steamcmd_servers/stormworks/) +[LeagueSandbox](/leaguesandbox) -## Sven coop -[svencoop](svencoop) +[Minetest](/minetest) (including MTG) -## Team Fortress 2 Classic -[Team Fortress 2 Classic](team_fortress_2_classic) +[Minecraft](/minecraft) +* [Bedrock](/minecraft/bedrock) + * [Bedrock](/minecraft/bedrock/bedrock) + * [gomint](/minecraft/bedrock/gomint) + * [Nukkit](/minecraft/bedrock/nukkit) + * [PocketMine MP](/minecraft/bedrock/pocketmine_mp) -## Tower Unite -[Tower Unite](tower_unite) +* [Java](/minecraft/java) Servers for Java Minecraft + * [Cuberite](/minecraft/java/cuberite) + * [Fabric](/minecraft/java/fabric) + * [Feather](/minecraft/java/feather) + * [Feed The Beast](/minecraft/java/ftb) + * [Forge](/minecraft/java/forge) + * [Magma](/minecraft/java/magma) + * [Paper](/minecraft/java/paper) + * [Spigot](/minecraft/java/spigot) + * [SpongeForge](/minecraft/java/spongeforge) + * [SpongeVanilla](/minecraft/java/spongevanilla) + * [Technic](/minecraft/java/technic) + * [Tuinity](/minecraft/java/tuinity) + * [VanillaCord](/minecraft/java/vanillacord) + * [Mohist](/minecraft/java/mohist) -## Unturned - * [Unturned](unturned) +* [Proxies](/minecraft/proxy) Minecraft Server Proxies + * [Java](/minecraft/proxy/java) + * [TyphoonLimbo](/minecraft/proxy/java/typhoonlimbo) + * [Waterfall](/minecraft/proxy/java/waterfall) + * [Travertine](/minecraft/proxy/java/travertine) + * [Velocity](/minecraft/proxy/java/velocity) + * [Cross Platform](/minecraft/proxy/cross_platform) + * [GeyserMC](/minecraft/proxy/cross_platform/geyser) + * [Waterdog](/minecraft/proxy/cross_platform/waterdog) + * DragonProxy abandoned in favour of GeyserMC. + + +[OpenRA](/openra) +* [OpenRA Dune2000](/openra/openra_dune2000) +* [OpenRA Red Alert](/openra/openra_red_alert) +* [OpenRA Tiberian Dawn](/openra/openra_tiberian_dawn) + + +[Red Dead Redemption](/rdr) +* [RedM](/rdr/redm) + +[steamcmd servers](/steamcmd_servers) These eggs use steamcmd to install +* [7 Days to Die](/steamcmd_servers/7_days_to_die) +* [ARK Survival Evolved](/steamcmd_servers/ark_survival_evolved) +* [Arma](/steamcmd_servers/arma) + * [Arma 3](/steamcmd_servers/arma/arma3) + * [Arma 3 HC](/steamcmd_servers/arma/arma3_headless_client) + * [Arma 3 HC](/steamcmd_servers/arma/arma3_x64) +* [Avorion](/steamcmd_servers/avorion) +* [Citadel: Forged with Fire](/steamcmd_servers/citadel) +* [Conan Exiles](/steamcmd_servers/conan_exiles) +* [Don't Starve](/steamcmd_servers/dont_starve) +* [ECO](/steamcmd_servers/eco) +* [HLDS server](/steamcmd_servers/hlds_server) +* [Holdfast](/steamcmd_servers/holdfast) +* [Hurtworld](/steamcmd_servers/hurtworld) +* [Insurgency: Sandstorm](/steamcmd_servers/insurgency_sandstorm) +* [Killing Floor 2](/steamcmd_servers/killingfloor2) +* [Mordhau](/steamcmd_servers/mordhau) +* [Onset](/steamcmd_servers/onset) +* [PixARK](/steamcmd_servers/pixark) +* [Project Zomboid](/steamcmd_servers/project_zomboid) +* [Rising World](/steamcmd_servers/rising_world) +* [Rust Staging Branch](/steamcmd_servers/rust_staging) +* [SCP: Secret Laboratory](/steamcmd_servers/scpsl) + * [dedicated](/steamcmd_servers/scpsl/dedicated) + * [multiadmin](/steamcmd_servers/scpsl/multiadmin) +* [Soldat](/steamcmd_servers/soldat) +* [Starbound](/steamcmd_servers/starbound) +* [Stationeers](/steamcmd_servers/stationeers) +* [Stormworks](/steamcmd_servers/stormworks) +* [Sven Co-op](/steamcmd_servers/svencoop) +* [Squad](/steamcmd_servers/squad) +* [Team Fortress 2 Classic](/steamcmd_servers/team_fortress_2_classic) +* [The Forest](/steamcmd_servers/the_forest) +* [Unturned](/steamcmd_servers/unturned) + +[Teeworlds](/teeworlds) +* [teeworlds](/teeworlds/teeworlds) + +[Terraria](/terraria) +* [vanilla](/terraria/vanilla) +* [tmodloader](/terraria/tmodloader) +* [tshock](/terraria/tshock) + +[Tycoon Games](/tycoon_games) +* [OpenTTD](/tycoon_games/openttd) + +[Unreal Engine](/unreal_engine) +* [Tower Unite](/unreal_engine/tower_unite) +* [Tower Unite](/steamcmd_servers/tower_unite) + +[Vintage Story](/vintage_story/vintage_story) + +[Xonotic](/xonotic/xonotic) + +[Cryofall](/cryofall) From 448b8c750ef7aaca4d8f760e1b865974595dcdae Mon Sep 17 00:00:00 2001 From: Softwarenoob Date: Mon, 14 Dec 2020 01:19:23 +0200 Subject: [PATCH 31/35] fix readme files --- steamcmd_servers/README.md | 223 ++++++++++--------------------------- 1 file changed, 60 insertions(+), 163 deletions(-) diff --git a/steamcmd_servers/README.md b/steamcmd_servers/README.md index bb7d1cfd..39a51116 100644 --- a/steamcmd_servers/README.md +++ b/steamcmd_servers/README.md @@ -1,192 +1,89 @@ -# Parkers Pterodactyl eggs repo +# steamcmd servers -I am working on adding a large collection of public eggs for the Pterodactyl community. +This is a collection of servers that use steamcmd to install. -With that I am also accepting PR's for new services and also updates to the current ones. +## 7 Days To Die +[7dtd](7_days_to_die/) -If you are submitting PR's try and keep names and titles the same. +## ARK +[ark](ark_survival_evolved/) -## How to import an egg +## ARMA +[arma](arma/) +* [arma 3](arma/arma3/) +* [arma 3 headless](arma/arma3_headless_client/) -If you are reading this it looks like you are looking to add an egg to your server. +## Avorion +[avorion](avorion/) -1. Download any of the json files located in the folders below. - 1. It's easiest to right click the `raw` button and save as. -2. In your panel go to the `Nests` section in the admin part of the panel -3. Click the green `Import Egg` button -4. Browse to the json file you saved earlier -5. Select what nest you want to put the egg in. - 1. If you want a new nest you need to create it before importing the egg. -6. Restart the daemon on your node before creating a server using the new egg(s). +## Citadel: Forged with Fire +[citadel](citadel/) -# You must restart your daemon after importing an egg +## Conan Exiles +[conan_exiles](conan_exiles/) +## Don't Starve +[dont_starve](dont_starve/) -## Please read the CONTRIBUTING.md before submitting PRs +## ECO +[ECO](eco/) -## [Bots](/bots) +## HLDS Server +[hlds](hlds_server/) -[Discord](/bots/discord) -* [ATL Bot](/bots/discord/atlbot) Node JS -* [Bastion](/bots/discord/bastion) -* [CorpBot](/bots/discord/corpbot) Python -* [discord.js](bots/discord/discord.js) Node JS generic -* [discord.py](bots/discord/discord.py) Python generic -* [discordgo](bots/discord/discordgo) golang generic -* [fragbot](/bots/discord/fragbot) Golang -* [jmusicbot](/bots/discord/jmusicbot) Java -* [parkertron](/bots/discord/parkertron) Golang -* [pixel-bot](/bots/discord/pixelbot) Python -* [Red](/bots/discord/redbot) Python -* [Sinusbot](/bots/discord/sinusbot) +## Holdfast +[holdfast](holdfast/) -* [Twitch](/bots/twitch) - * [PhantomBot](/bots/twitch/phantombot) - * [sogeBot](/bots/twitch/sogebot) +## Hurtworld +[hurtworld](hurtworld/) -[Other](/bots/other) -* [Big Brother Bot](/bots/other/bigbrotherbot) +## Insurgency: Sandstorm +[Insurgency: Sandstorm](insurgency_sandstorm/) -* [TeamSpeak3](bots/teamspeak3) - * [JTS3ServerMod](/bots/teamspeak3/jts3servermod) +## Mordhau +[mordhau](mordhau/) -## [Database](/database) -### In-Memory Databases -[Redis](/database/redis) -* [Redis 5](/database/redis/redis-5) -* [Redis 6](/database/redis/redis-6) +## Onset +[onset](onset/) -### noSQL -* [mongoDB](/database/nosql/mongodb) +## Project Zomboid +[project_zomboid](project_zomboid/) -### SQL Databases -* [MariaDB](/database/sql/mariadb) -* [PostgreSQL](/database/sql/postgres) +## Rising World +[rising_world](rising_world/) -## Voice Servers -* [Lavalink](/voice_servers/lavalink) -* [TeaSpeak](/voice_servers/teaspeak) -* [TS3-Manager](/voice_servers/ts3_manager) +## Rust Staging +[rust staging](rust_staging/) -## Game Eggs -[Among Us Impostor Server](/among_us/impostor_server) +## SCP: Secret Laboratory +[SCP: Secret Laboratory](/scpsl/) -[ET Legacy](/enemy_territory/etlegacy) +## Soldat +[soldat](soldat/) -[Factorio](/factorio/factorio) +## Squad +[squad](squad/) -[Grand Theft Auto](/gta) -* GTA V - * [FiveM](/gta/fivem) - * [RageMP](/gta/ragemp) - * [alt:V](/gta/altv) -* GTA SA - * [Multi Theft Auto](/gta/mtasa) - * [SA-MP](/gta/samp) +## Starbound +[starbound](starbound/) -[Mindustry](/mindustry) +## Stationeers +[Stationeers](/steamcmd_servers/stationeers/) -[LeagueSandbox](/leaguesandbox) +## Stormworks: Build and Rescue +[Stormworks](/steamcmd_servers/stormworks/) -[Minetest](/minetest) (including MTG) +## Sven coop +[svencoop](svencoop) -[Minecraft](/minecraft) -* [Bedrock](/minecraft/bedrock) - * [Bedrock](/minecraft/bedrock/bedrock) - * [gomint](/minecraft/bedrock/gomint) - * [Nukkit](/minecraft/bedrock/nukkit) - * [PocketMine MP](/minecraft/bedrock/pocketmine_mp) +## Team Fortress 2 Classic +[Team Fortress 2 Classic](team_fortress_2_classic) -* [Java](/minecraft/java) Servers for Java Minecraft - * [Cuberite](/minecraft/java/cuberite) - * [Fabric](/minecraft/java/fabric) - * [Feather](/minecraft/java/feather) - * [Feed The Beast](/minecraft/java/ftb) - * [Forge](/minecraft/java/forge) - * [Magma](/minecraft/java/magma) - * [Paper](/minecraft/java/paper) - * [Spigot](/minecraft/java/spigot) - * [SpongeForge](/minecraft/java/spongeforge) - * [SpongeVanilla](/minecraft/java/spongevanilla) - * [Technic](/minecraft/java/technic) - * [Tuinity](/minecraft/java/tuinity) - * [VanillaCord](/minecraft/java/vanillacord) - * [Mohist](/minecraft/java/mohist) +## The Forest +[The Forest](the_forest) -* [Proxies](/minecraft/proxy) Minecraft Server Proxies - * [Java](/minecraft/proxy/java) - * [TyphoonLimbo](/minecraft/proxy/java/typhoonlimbo) - * [Waterfall](/minecraft/proxy/java/waterfall) - * [Travertine](/minecraft/proxy/java/travertine) - * [Velocity](/minecraft/proxy/java/velocity) - * [Cross Platform](/minecraft/proxy/cross_platform) - * [GeyserMC](/minecraft/proxy/cross_platform/geyser) - * [Waterdog](/minecraft/proxy/cross_platform/waterdog) - * DragonProxy abandoned in favour of GeyserMC. - +## Tower Unite +[Tower Unite](tower_unite) -[OpenRA](/openra) -* [OpenRA Dune2000](/openra/openra_dune2000) -* [OpenRA Red Alert](/openra/openra_red_alert) -* [OpenRA Tiberian Dawn](/openra/openra_tiberian_dawn) - - -[Red Dead Redemption](/rdr) -* [RedM](/rdr/redm) - -[steamcmd servers](/steamcmd_servers) These eggs use steamcmd to install -* [7 Days to Die](/steamcmd_servers/7_days_to_die) -* [ARK Survival Evolved](/steamcmd_servers/ark_survival_evolved) -* [Arma](/steamcmd_servers/arma) - * [Arma 3](/steamcmd_servers/arma/arma3) - * [Arma 3 HC](/steamcmd_servers/arma/arma3_headless_client) - * [Arma 3 HC](/steamcmd_servers/arma/arma3_x64) -* [Avorion](/steamcmd_servers/avorion) -* [Citadel: Forged with Fire](/steamcmd_servers/citadel) -* [Conan Exiles](/steamcmd_servers/conan_exiles) -* [Don't Starve](/steamcmd_servers/dont_starve) -* [ECO](/steamcmd_servers/eco) -* [HLDS server](/steamcmd_servers/hlds_server) -* [Holdfast](/steamcmd_servers/holdfast) -* [Hurtworld](/steamcmd_servers/hurtworld) -* [Insurgency: Sandstorm](/steamcmd_servers/insurgency_sandstorm) -* [Killing Floor 2](/steamcmd_servers/killingfloor2) -* [Mordhau](/steamcmd_servers/mordhau) -* [Onset](/steamcmd_servers/onset) -* [PixARK](/steamcmd_servers/pixark) -* [Project Zomboid](/steamcmd_servers/project_zomboid) -* [Rising World](/steamcmd_servers/rising_world) -* [Rust Staging Branch](/steamcmd_servers/rust_staging) -* [SCP: Secret Laboratory](/steamcmd_servers/scpsl) - * [dedicated](/steamcmd_servers/scpsl/dedicated) - * [multiadmin](/steamcmd_servers/scpsl/multiadmin) -* [Soldat](/steamcmd_servers/soldat) -* [Starbound](/steamcmd_servers/starbound) -* [Stationeers](/steamcmd_servers/stationeers) -* [Stormworks](/steamcmd_servers/stormworks) -* [Sven Co-op](/steamcmd_servers/svencoop) -* [Squad](/steamcmd_servers/squad) -* [Team Fortress 2 Classic](/steamcmd_servers/team_fortress_2_classic) -* [The Forest](/steamcmd_servers/the_forest) -* [Unturned](/steamcmd_servers/unturned) - -[Teeworlds](/teeworlds) -* [teeworlds](/teeworlds/teeworlds) - -[Terraria](/terraria) -* [vanilla](/terraria/vanilla) -* [tmodloader](/terraria/tmodloader) -* [tshock](/terraria/tshock) - -[Tycoon Games](/tycoon_games) -* [OpenTTD](/tycoon_games/openttd) - -[Unreal Engine](/unreal_engine) -* [Tower Unite](/unreal_engine/tower_unite) -* [Tower Unite](/steamcmd_servers/tower_unite) - -[Vintage Story](/vintage_story/vintage_story) - -[Xonotic](/xonotic/xonotic) - -[Cryofall](/cryofall) +## Unturned + * [Unturned](unturned) From 6900e1f4acc989be3119adce5d19d4c2b53f5386 Mon Sep 17 00:00:00 2001 From: Softwarenoob Date: Mon, 14 Dec 2020 03:43:32 +0200 Subject: [PATCH 32/35] Add assetto_corsa --- steamcmd_servers/assetto_corsa/README.md | 12 +++ .../assetto_corsa/egg-assetto-corsa.json | 91 +++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 steamcmd_servers/assetto_corsa/README.md create mode 100644 steamcmd_servers/assetto_corsa/egg-assetto-corsa.json diff --git a/steamcmd_servers/assetto_corsa/README.md b/steamcmd_servers/assetto_corsa/README.md new file mode 100644 index 00000000..f6af24fc --- /dev/null +++ b/steamcmd_servers/assetto_corsa/README.md @@ -0,0 +1,12 @@ +# Assetto Corsa + +Assetto Corsa is a sim racing video game developed by the Italian video game developer Kunos Simulazioni. It is designed with an emphasis on a realistic racing experience with support for extensive customization and moddability. + +## Server Ports + +Asseto Corsa requires two ports, game port is UDP and WEB HTTP port is TCP. + +| Port | default | +|-------------|---------| +| Game | 9600 | +| HTTP | 8081 | diff --git a/steamcmd_servers/assetto_corsa/egg-assetto-corsa.json b/steamcmd_servers/assetto_corsa/egg-assetto-corsa.json new file mode 100644 index 00000000..84b8d2b6 --- /dev/null +++ b/steamcmd_servers/assetto_corsa/egg-assetto-corsa.json @@ -0,0 +1,91 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v1" + }, + "exported_at": "2020-12-14T03:20:46+02:00", + "name": "Assetto Corsa", + "author": "admin@softwarenoob.com", + "description": "Assetto Corsa (Italian for \"Race Setup\") is a sim racing video game developed by the Italian video game developer Kunos Simulazioni. It is designed with an emphasis on a realistic racing experience with support for extensive customization and moddability", + "features": null, + "image": "quay.io\/parkervcp\/pterodactyl-images:ubuntu_source", + "startup": ".\/acServer", + "config": { + "files": "{\r\n \"cfg\/server_cfg.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"NAME\": \"NAME={{server.build.env.HOSTNAME}}\",\r\n \"PASSWORD\": \"PASSWORD={{server.build.env.PASSWORD}}\",\r\n \"ADMIN_PASSWORD\": \"ADMIN_PASSWORD={{server.build.env.ADM_PASSWORD}}\",\r\n \"UDP_PORT\": \"UDP_PORT={{server.build.default.port}}\",\r\n \"TCP_PORT\": \"TCP_PORT={{server.build.default.port}}\",\r\n \"HTTP_PORT\": \"HTTP_PORT={{server.build.env.HTTP_PORT}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Server started\"\r\n}", + "logs": "{\r\n \"custom\": true,\r\n \"location\": \"logs\/latest.log\"\r\n}", + "stop": "^C" + }, + "scripts": { + "installation": { + "script": "#!\/bin\/bash\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc1 ca-certificates\r\n\r\n## just in case someone removed the defaults.\r\nif [ \"${STEAM_USER}\" == \"\" ]; then\r\n STEAM_USER=anonymous\r\n STEAM_PASS=\"\"\r\n STEAM_AUTH=\"\"\r\nelse\r\n echo -e \"Downloading the game as Steam user ${STEAM_USER}\"\r\nfi\r\n\r\n## download and install steamcmd\r\ncd \/tmp\r\nmkdir -p \/mnt\/server\/steamcmd\r\ncurl -sSL -o steamcmd.tar.gz https:\/\/steamcdn-a.akamaihd.net\/client\/installer\/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steamcmd\r\ncd \/mnt\/server\/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\n# This is changed at the end of the install process anyways.\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install game using steamcmd\r\n.\/steamcmd.sh +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} +@sSteamCmdForcePlatformType windows +force_install_dir \/mnt\/server +app_update 302550 ${EXTRA_FLAGS} validate +quit ## other flags may be needed depending on install. looking at you cs 1.6\r\n\r\n## set up 32 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\ncp -v linux32\/steamclient.so ..\/.steam\/sdk32\/steamclient.so\r\n\r\n## set up 64 bit libraries\r\nmkdir -p \/mnt\/server\/.steam\/sdk64\r\ncp -v linux64\/steamclient.so ..\/.steam\/sdk64\/steamclient.so\r\n\r\nif [ \"${STEAM_USER}\" == \"anonymous\" ]; then\r\n echo -e \"ERROR - STEAM USER NOT SET\\n\"\r\n echo -e \"Steam account must have the dedicated server in his library in order to install and host the game\\n\"\r\n echo -e \"You must configure Steam account in the server startup variables, after that reinstall the server\\n\"\r\nfi", + "container": "debian:buster-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "Steam Username", + "description": "A steam username of an account that owns the game is required", + "env_variable": "STEAM_USER", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string" + }, + { + "name": "Steam Password", + "description": "Steam User Password", + "env_variable": "STEAM_PASS", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string" + }, + { + "name": "Steam Auth Code", + "description": "Steam Auth Code required if the Steam Account is using Steam Auth", + "env_variable": "STEAM_AUTH", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string" + }, + { + "name": "Server Name", + "description": "Name of the server", + "env_variable": "HOSTNAME", + "default_value": "Pterodactyl Server", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:45" + }, + { + "name": "Server Password", + "description": "If enabled players must enter the password to join the server", + "env_variable": "PASSWORD", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "nullable|string|max:40" + }, + { + "name": "Admin Password", + "description": "Used to login as server administrator, type \/help in-game for more", + "env_variable": "ADMIN_PASSWORD", + "default_value": "4yRWj5vqr6zD", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:40" + }, + { + "name": "HTTP Port", + "description": "HTTP Port", + "env_variable": "HTTP_PORT", + "default_value": "8081", + "user_viewable": false, + "user_editable": false, + "rules": "required|string|max:20" + } + ] +} \ No newline at end of file From c1c73cd002f4fbf847d1513ad336413264c0013a Mon Sep 17 00:00:00 2001 From: Softwarenoob Date: Mon, 14 Dec 2020 03:47:09 +0200 Subject: [PATCH 33/35] add assetto_corsa to readme files --- steamcmd_servers/README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/steamcmd_servers/README.md b/steamcmd_servers/README.md index 4c11cd3b..e6e12b54 100644 --- a/steamcmd_servers/README.md +++ b/steamcmd_servers/README.md @@ -16,6 +16,9 @@ This is a collection of servers that use steamcmd to install. ## Avorion [avorion](avorion/) +## Assetto Corsa +[assetto_corsa](assetto_corsa/) + ## Citadel: Forged with Fire [citadel](citadel/) From a3bebea8ebf666b011902e8daaa10ce5d61b86af Mon Sep 17 00:00:00 2001 From: Alex Date: Mon, 14 Dec 2020 03:50:36 +0200 Subject: [PATCH 34/35] edit main readme list --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0898f36c..e93dd92b 100644 --- a/README.md +++ b/README.md @@ -142,6 +142,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [Arma 3 HC](/steamcmd_servers/arma/arma3_headless_client) * [Arma 3 HC](/steamcmd_servers/arma/arma3_x64) * [Avorion](/steamcmd_servers/avorion) +* [Assetto Corsa](/steamcmd_servers/assetto_corsa) * [Citadel: Forged with Fire](/steamcmd_servers/citadel) * [Conan Exiles](/steamcmd_servers/conan_exiles) * [Don't Starve](/steamcmd_servers/dont_starve) From c583f4b2fee661bf8f26692d7244693a6829c245 Mon Sep 17 00:00:00 2001 From: Alex <11708877+acl1704@users.noreply.github.com> Date: Sun, 13 Dec 2020 18:26:28 -0800 Subject: [PATCH 35/35] reduce excess if block --- minecraft/java/mohist/egg-mohist.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/minecraft/java/mohist/egg-mohist.json b/minecraft/java/mohist/egg-mohist.json index 73027301..8b675b74 100644 --- a/minecraft/java/mohist/egg-mohist.json +++ b/minecraft/java/mohist/egg-mohist.json @@ -3,7 +3,7 @@ "meta": { "version": "PTDL_v1" }, - "exported_at": "2020-12-08T11:59:05-08:00", + "exported_at": "2020-12-13T18:26:08-08:00", "name": "Mohist", "author": "alex.chang-lam@protonmail.com", "description": "Spigot fork with performance optimizations.", @@ -18,7 +18,7 @@ }, "scripts": { "installation": { - "script": "#!\/bin\/bash\r\n# Mohist Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl\r\n\r\n#Go into main direction\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir \/mnt\/server\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\nif [ ! -z ${BUILD_VERSION} ]; then\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_VERSION}\/download\r\n \r\n #Downloading jars\r\n echo -e \"Download link is ${DOWNLOAD_LINK}\"\r\n echo -e \"Downloading build version ${BUILD_VERSION}\"\r\n if [ ! -z \"${DOWNLOAD_LINK}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}-server.jar; then\r\n echo -e \"Download link is valid.\"\r\n else\r\n echo -e \"Link is invalid closing out\"\r\n exit 2\r\n fi\r\n fi\r\n\r\n curl -s -o server.jar -sS ${DOWNLOAD_LINK}\r\n\r\n #Checking if downloaded jars exist\r\n if [ ! -f .\/server.jar ]; then\r\n echo \"!!! Error downloading build version ${BUILD_VERSION} !!!\"\r\n exit\r\n fi\r\nelse\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_TYPE}\/download\r\n\r\n #Downloading jars\r\n echo -e \"Download link is ${DOWNLOAD_LINK}\"\r\n echo -e \"Downloading ${BUILD_TYPE} build version\"\r\n if [ ! -z \"${DOWNLOAD_LINK}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}-server.jar; then\r\n echo -e \"Download link is valid.\"\r\n else\r\n echo -e \"Link is invalid closing out\"\r\n exit 2\r\n fi\r\n fi\r\n\r\n curl -s -o server.jar -sS ${DOWNLOAD_LINK}\r\n\r\n #Checking if downloaded jars exist\r\n if [ ! -f .\/server.jar ]; then\r\n echo \"!!! Error downloading ${BUILD_TYPE} build !!!\"\r\n exit\r\n fi\r\nfi", + "script": "#!\/bin\/bash\r\n# Mohist Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\napt update\r\napt install -y curl\r\n\r\n#Go into main direction\r\nif [ ! -d \/mnt\/server ]; then\r\n mkdir \/mnt\/server\r\nfi\r\n\r\ncd \/mnt\/server\r\n\r\nif [ ! -z ${BUILD_VERSION} ]; then\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_VERSION}\/download\r\nelse\r\n DOWNLOAD_LINK=https:\/\/mohistmc.com\/api\/${MC_VERSION}\/${BUILD_TYPE}\/download\r\nfi\r\n\r\n#Downloading jars\r\necho -e \"Download link is ${DOWNLOAD_LINK}\"\r\necho -e \"Downloading build version ${BUILD_VERSION}\"\r\nif [ ! -z \"${DOWNLOAD_LINK}\" ]; then \r\n if curl --output \/dev\/null --silent --head --fail ${DOWNLOAD_LINK}-server.jar; then\r\n echo -e \"Download link is valid.\"\r\n else\r\n echo -e \"Link is invalid closing out\"\r\n exit 2\r\n fi\r\nfi\r\n\r\ncurl -s -o server.jar -sS ${DOWNLOAD_LINK}\r\n\r\n#Checking if downloaded jars exist\r\nif [ ! -f .\/server.jar ]; then\r\n echo \"!!! Error downloading build version ${BUILD_VERSION} !!!\"\r\n exit\r\nfi", "container": "debian:buster-slim", "entrypoint": "bash" } @@ -29,7 +29,7 @@ "description": "The name of the jarfile to run the server with.", "env_variable": "SERVER_JARFILE", "default_value": "server.jar", - "user_viewable": true, + "user_viewable": false, "user_editable": false, "rules": "required|string|max:20" },