From fd73c26acd723d1b481bd802a90b38ebae797649 Mon Sep 17 00:00:00 2001 From: Scarabyte Date: Tue, 23 Jan 2024 20:04:43 +0100 Subject: [PATCH] docs(role): Docs for lgsm --- docs/reference/multiple-instances.md | 3 +- docs/sandbox/apps/lgsm.md | 51 ++++++++++++++++++++++++++++ docs/sandbox/index.md | 1 + mkdocs.yml | 1 + 4 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 docs/sandbox/apps/lgsm.md diff --git a/docs/reference/multiple-instances.md b/docs/reference/multiple-instances.md index 56c3b6b75..5723ba204 100644 --- a/docs/reference/multiple-instances.md +++ b/docs/reference/multiple-instances.md @@ -14,7 +14,7 @@ Apps that used to be supported by the "ArrX" system which allowed the user to de The general idea is to move all the configuration into the `/srv/git/saltbox/inventories/host_vars/localhost.yml` along with [other customizations](../saltbox/inventory/index.md). -**As of 11-14-2023** the roles supported are: +**As of 01-23-2024** the roles supported are: ```yaml alternatrr @@ -26,6 +26,7 @@ emby gluetun jellyfin jellyseerr +lgsm lidarr mariadb mcrouter diff --git a/docs/sandbox/apps/lgsm.md b/docs/sandbox/apps/lgsm.md new file mode 100644 index 000000000..1bb83e6de --- /dev/null +++ b/docs/sandbox/apps/lgsm.md @@ -0,0 +1,51 @@ +# LinuxGSM + +## What is it? + +LinuxGSM is a command-line tool for quick and simple deployment and management of Linux dedicated game servers. It aims to make the process of managing game servers hassle-free. With LinuxGSM, we can avoid spending hours trying to configure and manage game servers. It provides a streamlined and efficient solution for setting up and maintaining dedicated game servers on Linux. + +| Details | | | | +|-------------|-------------|-------------|-------------| +| [:material-home: Project home](https://linuxgsm.com){: .header-icons } | [:octicons-link-16: Docs](https://docs.linuxgsm.com){: .header-icons } | [:octicons-mark-github-16: Github](https://github.com/GameServerManagers/LinuxGSM){: .header-icons } | [:material-docker: Docker](https://hub.docker.com/r/gameservermanagers/gameserver){: .header-icons } + +### 1. Installation + +To add instances, add: + +```yaml + +lgsm_instances: ["lgsm_valheim", "lgsm_rust"] +# Example setting image tag to correct shortcode from https://github.com/GameServerManagers/LinuxGSM/blob/master/lgsm/data/serverlist.csv using lgsm_shortcode will automatically pull the correct image tag +lgsm_valheim_docker_image_tag: "vh" # this is the valheimserver shortcode +lgsm_valheim_docker_ports_defaults: ["2456:2456/udp","2457:2457/udp"] # ports for valheim need to be exposed +# notice that rust is the image tag for the rustserver. This means we dont have to specify it here +lgsm_rust_docker_ports_defaults: ["28015:28015/udp","28017:28017/udp","28082:28082/udp"] # ports for rust example to be exposed + +``` + +To the inventory files. [See instructions on inventory here](../../saltbox/inventory/index.md) + +Then run: + +``` shell +sb install sandbox-lgsm +``` + +This will start the installation of LinuxGSM using the specified image tag per instance, which allows for the installation and management of multiple game servers. + +### 2. Setup + +LinuxGSM config files are the configuration files used by the game server to store various game server settings, such as the server name, maximum players, map cycle, etc. These settings can be edited to customise a game server. Different game server configs can use different syntax and work slightly differently, but all do the same basic job of editing a game server settings. + +The configs for the lgsm servers are in `/opt/CONTAINERNAME/config-lgsm/LGSMSERVERNAME/` +For our valheim example the config would be `/opt/lgsm_valheim/config-lgsm/vhserver/vhserver.cfg` which is the lgsm instance config for that server. + +`/opt/lgsm_valheim/config-lgsm/vhserver/common.cfg` works as well. Can read more [here](https://docs.linuxgsm.com/configuration/game-server-config) + +Any actual game server configs will be in the `/opt/CONTAINERNAME/serverfiles/` and are all dependant on the game server installed. + +- [:octicons-link-16: Documentation](https://docs.linuxgsm.com/configuration/game-server-config){: .header-icons } + +### 3. Join Server + +In your game, connect to your ip and default ports for the server. Make sure you set the UDP and TCP for the ports correctly. If everything was setup correctly the game should connect to the server. diff --git a/docs/sandbox/index.md b/docs/sandbox/index.md index 8d6760a6a..da02f40b4 100644 --- a/docs/sandbox/index.md +++ b/docs/sandbox/index.md @@ -61,6 +61,7 @@ - **[kitana](../sandbox/apps/kitana.md)** - tag - `sandbox-kitana` - **[komga](../sandbox/apps/komga.md)** - tag - `sandbox-komga` - **[lazylibrarian](../sandbox/apps/lazylibrarian.md)** - tag - `sandbox-lazylibrarian` +- **[lgsm](../sandbox/apps/lgsm.md)** - tag - `sandbox-lgsm` - **[linkding](../sandbox/apps/linkding.md)** - tag - `sandbox-linkding` - **[logarr](../sandbox/apps/logarr.md)** - tag - `sandbox-logarr` - **[makemkv](../sandbox/apps/makemkv.md)** - tag - `sandbox-makemkv` diff --git a/mkdocs.yml b/mkdocs.yml index 09170b24d..b14f9b11e 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -216,6 +216,7 @@ nav: - Homarr: sandbox/apps/homarr.md - Homepage: sandbox/apps/homepage.md - Game Servers: + - LinuxGSM: sandbox/apps/lgsm.md - Minecraft: sandbox/apps/minecraft.md - Minecraft Bedrock: sandbox/apps/minecraft-bedrock.md - Media Management: