Project

gsd-cli

0.0
Repository is archived
No commit activity in last 3 years
No release in over 3 years
A simple cli for launching dedicated game servers
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

~> 0.8.1
~> 4.4
 Project Readme

gsd-cli v2 Build Status

oclif Discord

A CLI tool for deploying dedicated game servers as systemd units (daemons).

This repo is for gsd-cli version 2.x. This version of the cli is written in CoffeeScript and can be downloaded as a global module from npm.

gsd-cli installs dedicated server as user daemons managed by systemd, a Linux system & service manager.

You can interact with systemd services using the systemctl and journalctl commands. Since the cli installs dedicated servers as user daemons, always include the --user flag when interacting with systemd.

For example: systemctl --user restart minecraft.

You can read the log files for a given server using the journalctl command. For example, to follow a Minecraft server's log:

systemctl --user -fu minecraft

All game servers are created in /home/your_user/whatever-server. For example, a minecraft server would look like this:

/home/egee/minecraft-server.

The dedicated servers themselves are spawned from a shell launch.sh script script located in the dedicated server's install path. This file is created by the cli from the config file passed to it during install time and is safe to edit after installing a server. For example, the launch script for a Rust server is located:

/home/egee/rust-server/launch.sh

User-level systemd unit files are located in ~/.config/systemd/user. You can specify the amount of system resources available to the server by adding properties to the .service file if you desire.

Currently supported game servers:

  • minecraft
  • rust
  • 7 days to die[sdtd]
  • garry's mod[gmod]
  • team fortress 2[tf2]

Usage

$ npm install -g gsd-cli
$ gsd-cli COMMAND
running command...
$ gsd-cli (-v|--version|version)
gsd-cli/2.1.0 linux-x64 node-v12.18.0
$ gsd-cli --help [COMMAND]
USAGE
  $ gsd-cli COMMAND
...

Commands

  • gsd-cli help [COMMAND]
  • gsd-cli install

gsd-cli help [COMMAND]

display help for gsd-cli

USAGE
  $ gsd-cli help [COMMAND]

ARGUMENTS
  COMMAND  command to show help for

OPTIONS
  --all  see all commands in CLI

See code: @oclif/plugin-help

gsd-cli install

Installs a dedicated game server using a config file or a name with default settings.

USAGE
  $ gsd-cli install

OPTIONS
  -d, --dryrun     test installing a server without actually installing it
  -n, --name=name  name of the server to install

See code: src/commands/install.js