1
0
mirror of https://github.com/LpmRaven/factorio-docker-server.git synced 2024-12-12 08:24:07 +02:00
factorio-docker-server/README.md
2016-12-17 20:50:18 +00:00

3.3 KiB

Introduction

This repository was forked from carloe/docker-factorio to build a custom configured server on factorio and provide extra information on how to setup a factorio server using docker.

Server Setup

The easiest way to setup a factorio server by far, is to use Digital Ocean. Follow the link to signup and get $10 for free to start you off. This guide assumes your are using a Mac, Windows users may have to alter their method when it comes to terminal usage. Disclaimer: All referrals generate credit to my account for more factorio goodness.

  1. Sign up to Digital Ocean
  2. Click 'Create droplet' button Click the 'create droplet' button
  3. Under 'Choose an image' select 'One-click apps' One-click apps
  4. Select 'Docker 1.12.* on 16.04' docker 1.12.0 on 16.04
  5. Select the '$5/mo' size, this is fine for a basic multiplayer server 5 dollars a month memory
  6. Select the datacenter that is closest to you london datacenter selected
  7. Add your SSH public key. Alternatively, you will need to take note of the password that Digital Ocean send to you after you setup the server.
  8. You will only need 1 droplet, name your server and click create. Create your droplet

Connect to your server

Windows users will need to look at alterations for using PuTTY.

  1. Make note of the IP address of your server (ipv4) docker IP address
  2. Open terminal
  3. ssh root@IPaddress, obviously replace 'IPaddress' with the IP address.

Build Your Factorio headless server

The latest Factorio headless server is downloaded at build time. This may be a good reason you want to build your own image since the Docker Hub repo may not always be up to date.

  1. git clone https://github.com/LpmRaven/docker-factorio.git
  2. docker build -t factorio-instance-name .

Persisting Saves

Use a docker volume to persist the savegames on the host machine rather than in the docker container.

mkdir $(pwd)/saves

# Make sure the saves dir can be written to by the "factorio" user in Docker, with uid 1000
sudo chown 1000:1000 $(pwd)/saves
# (alternatively, if you don't have root): chmod 777 $(pwd)/saves

Basic Usage

The init script will automatically create a new save game if none exists.

Then launch your container as usual.

docker run -d \
           -v $(pwd)/saves:/opt/factorio/saves \
           -p 34197:34197/udp \
           --restart=always \
           --name factorio-server \
           factorio-instance-name