Skip to content

Latest commit

 

History

History
32 lines (20 loc) · 2.21 KB

DOCKER.md

File metadata and controls

32 lines (20 loc) · 2.21 KB

Docker Guide

This guide assumes you have Docker (https://www.docker.com/) installed on your machine.

How to start the server

  • Launch docker
  • Pull the repo
  • Open powershell or whatever terminal you're using and navigate to the server directory
  • Type docker-compose up -d (the -d is optional and will free up -detach- the terminal)
  • Wait until everything is complete. If you previously stopped or deleted the services then you may encounter ERROR: The image for the service you're trying to recreate has been removed. If you continue, volume data could be lost. Consider backing up your data before continuing. Continue with the new image? [yN]. You can enter y to force the install.

Note the zone IPs are not updated in the DB and will default to 127.0.0.1 so you will need to use the --hairpin option when connecting to the server.

How to restart the Server/DB

The server runs in the "game" service and the database in the "db" service and will likely be named something like server_game_1 similarly the database will be something like server_db_1. To see the names assigned to your services type docker ps. To restart them you can use the docker restart command such as docker restart server_game_1.

Alternatively you can stop and start individual services with docker stop container_name and docker start container_name where container_name is the container name from the docker ps command. The run order should be "database" then "game".

Connect to server terminal

If you need to access the terminal on the server you can enter docker exec -it server_game_1 bash where server_game_1 is the container name from the docker ps command. To exit type exit.

Transfer files to server from local machine

If you need to transfer files from your local machine to the server you can use the docker cp command. All code on the server exists in the /server directory. See below for example. This is useful for things like updating and testing the lua scripts without needing to restart the server.

Example copying godmode.lua script from local machine to server (where server name is server_game_1): docker cp scripts/commands/godmode.lua server_game_1:/server/scripts/commands/godmode.lua