Howto:Set up a multiplayer server: Difference between revisions

no edit summary
No edit summary
Line 70: Line 70:


* Now 'cd' into the build-fgms directory, and rename the file you just copied as "fgms.conf" so that fgms can find the proper configuration.
* Now 'cd' into the build-fgms directory, and rename the file you just copied as "fgms.conf" so that fgms can find the proper configuration.
== Running in docker ==
** WARNING - this is currently under development, consider this experimental **
If you have docker installed or are willing to do so, there are pre-built docker images available at [https://cloud.docker.com/u/flightgear/repository/docker/flightgear/fgms/ The docker hub]. There are images for amd64/linux systems as well as for raspberry pis running arm/linux. Sorry, no windows based binaries are currently available.
Installing docker on any linux or the pi is as easy as
:<syntaxhighlight lang="bash">curl -sSL https://get.docker.com | sh</syntaxhighlight>
and adding your user to the docker group.
If you have docker running, you are all set to start your multiplayer-server for localhost usage:
:<syntaxhighlight lang="bash">docker run -p5000:5000/udp -p5001:5001 flightgear/fgms:0.13.4</syntaxhighlight>
This starts fgms in local-lan mode, redirects the log to the console and exposes ports 5000 and 5001 to your local loopback network.
To use your own fgms.conf, simply link it into the container like
:<syntaxhighlight lang="bash">docker run -p5000:5000/udp -p5001:5001 -v /path/to/my/fgms.conf:/usr/local/etc/fgms.conf:ro flightgear/fgms:0.13.4</syntaxhighlight>
where /path/to/my/fgms.conf is the absolute path name of your fgms.conf. You MUST use absolute paths names.
The docker image wraps the fgms binary so you can add any command line option that fgms accepts:
:<syntaxhighlight lang="bash">
$ docker run flightgear/fgms:0.13.4 -h
fgms: version 0.13.4, compiled on Apr 13 2019, at 09:11:11
options are:
-h            print this help screen
-a PORT      listen to PORT for telnet
-c config    read 'config' as configuration file
-p PORT      listen to PORT
-t TTL        Time a client is active while not sending packets
-o OOR        nautical miles two players must be apart to be out of reach
-l LOGFILE    Log to LOGFILE
-v LEVEL      verbosity (loglevel) in range 0 (few) and 4 (much). 5 to disable. (def=2)
-d            do _not_ run as a daemon (stay in foreground)
-D            do run as a daemon
the default is to run as a daemon, which can be overridden in the
config file.
syntax: /usr/local/sbin/fgms options
</syntaxhighlight>


== Setting up the config file ==
== Setting up the config file ==