Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs(role): Docs for lgsm #261

Merged
merged 1 commit into from
Jan 24, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion docs/reference/multiple-instances.md
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -26,6 +26,7 @@ emby
gluetun
jellyfin
jellyseerr
lgsm
lidarr
mariadb
mcrouter
Expand Down
51 changes: 51 additions & 0 deletions docs/sandbox/apps/lgsm.md
Original file line number Diff line number Diff line change
@@ -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.
1 change: 1 addition & 0 deletions docs/sandbox/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -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`
Expand Down
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down