ginrcon

command module
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 18, 2024 License: MIT Imports: 10 Imported by: 0

README

GinRCON

A lightweight, simple Go webserver build on Gin to provide a REST API frontend to sending RCON commands to a game server. Available in a Docker image, see the packages page for this repo.

API Call Examples

Send command to default RCON server

Assuming you have a default RCON server specified (see environment variables)

curl --location 'http://localhost:8080/command' \
--header 'Content-Type: application/json' \
--data '{
    "command": "Save"
}'
POST command to specific RCON server
curl --location 'http://localhost:8080/command' \
--header 'Content-Type: application/json' \
--data '{
    "server": "gameserver:25575",
    "password": "1234",
    "command": "Save"
}'
Health check the status of the webserver
curl --location 'http://localhost:8080/status'

Docker

Image

A docker image that runs this application is available under the repo packages, or at ghcr.io/holysoles/ginrcon.

Environment Variables
  • PORT: Optional, override the port (default 8080) of the webserver within the container
  • TRUSTED_PROXIES: Optional, set specified trusted proxy addresses
  • RCON_SERVER: Optional, configure a default RCON server's hostname
  • RCON_PORT: Optional, configure a default RCON server's port
  • RCON_ADMIN_PASSWORD: Optional, configure the password to a default RCON server
Compose

An example compose file can be found in the repo here

Building

docker build --tag ghcr.io/holysoles/ginrcon:<tag> .

Testing

docker run --rm -d -p 8080:8081 -e "PORT=8081" ghcr.io/holysoles/ginrcon:<tag>

Upload

docker push ghcr.io/holysoles/ginrcon:<tag>

Credits

Special thanks to the following projects for providing essential libraries:

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL