Compare commits

...

41 Commits

Author SHA1 Message Date
29f3e54adf Merge pull request #220 from MagicHack/master
Update to 0.17.13
2019-03-15 20:01:54 +01:00
148de89c52 Update to 0.17.13 2019-03-15 14:51:21 -04:00
4fc8da6581 Merge pull request #217 from MagicHack/master
Update to 0.17.12
2019-03-15 07:33:29 -07:00
e6290605c7 Update to 0.17.12 2019-03-14 16:45:22 -04:00
662372a1ba Update to 0.17.11 2019-03-11 23:24:16 +01:00
82f6bdf865 Merge pull request #212 from psykzz/patch-3
Update to 0.17.11
2019-03-11 23:23:44 +01:00
c9f4510195 Update to 0.17.11 2019-03-11 22:04:24 +00:00
6602c7cf7f Merge pull request #210 from notgne2/patch-1
Bump the Factorio version number in Dockerfile
2019-03-11 20:18:01 +01:00
8be7b47c07 Bump the Factorio version number in Dockerfile 2019-03-11 18:55:35 +00:00
717275198e Merge pull request #209 from pascaldulieu/master
0.17.10
2019-03-11 19:20:26 +01:00
d68ec4fdd4 Update README.md 2019-03-11 17:39:19 +00:00
47464e0b9b Update Dockerfile 2019-03-11 17:39:07 +00:00
23fdd4ed09 Update Dockerfile 2019-03-11 17:37:42 +00:00
e7a6bddc1f Merge pull request #207 from pascaldulieu/master
0.17.9
2019-03-08 11:49:10 -08:00
3d9e2999b6 Update README.md 2019-03-08 18:34:38 +00:00
7b33b9f6e8 Update Dockerfile 2019-03-08 18:33:28 +00:00
066c61fb85 Merge pull request #206 from pascaldulieu/master
0.17.8
2019-03-07 09:31:16 -08:00
303fbb5d97 Merge branch 'master' into master 2019-03-07 09:30:50 -08:00
3f4fd9e348 0.17.7 2019-03-07 09:18:40 -08:00
504ebfde23 Update README.md 2019-03-07 17:03:36 +00:00
f982370229 Update Dockerfile 2019-03-07 17:02:52 +00:00
51d3845af7 Merge pull request #202 from DeliciousJaffa/master
0.17.6
2019-03-05 11:02:59 -08:00
889c10bd48 0.17.6 2019-03-05 18:07:20 +00:00
46f397a9bb Update dockerfile for 0.17.6 2019-03-05 18:06:18 +00:00
988aa08a73 Merge pull request #200 from DBendit/stop-deleting-mapgen
Stop wiping out mapgen settings
2019-03-05 09:48:36 -08:00
ff6f4b6cd0 Merge pull request #201 from deveth0/master
#197: Enable envsubst
2019-03-05 09:48:06 -08:00
ea426ca0f4 Update README.md 2019-03-05 14:05:49 +01:00
4ecb1dcb6b Update README.md 2019-03-05 13:08:21 +01:00
3ef8c5309e #197: Enable envsubst - README 2019-03-05 13:05:27 +01:00
70c402b9dd #197: Enable envsubst 2019-03-05 12:47:23 +01:00
2b434ff08f Stop wiping out mapgen settings 2019-03-04 23:49:33 -06:00
49c5dff898 Merge pull request #199 from DBendit/fix-duplicate-banlist
Removing duplicate banlist line
2019-03-04 13:18:56 -08:00
35d22efc67 Removing duplicate banlist line 2019-03-04 15:14:59 -06:00
f1b75ac034 added contributor 2019-03-04 11:00:12 -08:00
fbb550916c Merge pull request #198 from DBendit/0.17.5
0.17.5
2019-03-04 10:53:26 -08:00
1d8be250e9 0.17.5 2019-03-04 12:47:39 -06:00
d90f45bd41 Merge pull request #195 from DBendit/0.17.4
0.17.4
2019-03-01 11:41:12 -08:00
2b201fea5b 0.17.4 2019-03-01 13:06:08 -06:00
b0a64e5939 minor text changes 2019-03-01 08:43:50 -08:00
ef24dad0bf Merge pull request #194 from DBendit/readme
Reorganizing volume listing to include map-settings and proper ordering
2019-02-28 14:01:13 -08:00
69a52f2c19 Reorganizing volume listing to include map-settings and proper ordering 2019-02-28 13:45:51 -06:00
3 changed files with 41 additions and 15 deletions

View File

@ -9,8 +9,8 @@ ARG PGID=845
ENV PORT=34197 \
RCON_PORT=27015 \
VERSION=0.17.3 \
SHA1=df70827c7f3e39ee3443de4d8c10f30f71973fdf \
VERSION=0.17.13 \
SHA1=7451e8423c62390487311514907fea417f52fed5 \
SAVES=/factorio/saves \
CONFIG=/factorio/config \
MODS=/factorio/mods \
@ -18,7 +18,7 @@ ENV PORT=34197 \
SCRIPTOUTPUT=/factorio/script-output
RUN mkdir -p /opt /factorio && \
apk add --update --no-cache pwgen su-exec binutils && \
apk add --update --no-cache pwgen su-exec binutils gettext libintl && \
apk add --update --no-cache --virtual .build-deps curl && \
curl -sSL https://www.factorio.com/get-download/$VERSION/headless/linux64 \
-o /tmp/factorio_headless_x64_$VERSION.tar.xz && \

View File

@ -23,7 +23,6 @@ fi
if [ ! -f $CONFIG/map-gen-settings.json ]; then
cp /opt/factorio/data/map-gen-settings.example.json $CONFIG/map-gen-settings.json
echo "{}" > $CONFIG/map-gen-settings.json
fi
if [ ! -f $CONFIG/map-settings.json ]; then
@ -62,7 +61,6 @@ exec ${SU_EXEC} /opt/factorio/bin/x64/factorio \
--server-whitelist $CONFIG/server-whitelist.json \
--use-server-whitelist \
--server-adminlist $CONFIG/server-adminlist.json \
--server-banlist $CONFIG/server-banlist.json \
--rcon-password "$(cat $CONFIG/rconpw)" \
--server-id /factorio/config/server-id.json \
"$@"

View File

@ -1,6 +1,6 @@
# Factorio [![](https://images.microbadger.com/badges/image/dtandersen/factorio.svg)](https://microbadger.com/images/dtandersen/factorio "Get your own image badge on microbadger.com") [![Docker Pulls](https://img.shields.io/docker/pulls/dtandersen/factorio.svg)](https://hub.docker.com/r/dtandersen/factorio/) [![Docker Stars](https://img.shields.io/docker/stars/dtandersen/factorio.svg)](https://hub.docker.com/r/dtandersen/factorio/)
* `0.17.3`, `0.17`, `latest` [(0.17/Dockerfile)](https://github.com/dtandersen/docker_factorio_server/blob/master/0.17/Dockerfile)
* `0.17.13`, `0.17`, `latest` [(0.17/Dockerfile)](https://github.com/dtandersen/docker_factorio_server/blob/master/0.17/Dockerfile)
* `0.16.51`, `0.16`, `stable` [(0.16/Dockerfile)](https://github.com/dtandersen/docker_factorio_server/blob/master/0.16/Dockerfile)
* `0.15.40`, `0.15` [(0.15/Dockerfile)](https://github.com/dtandersen/docker_factorio_server/blob/master/0.15/Dockerfile)
* `0.14.23`, `0.14` [(0.14/Dockerfile)](https://github.com/dtandersen/docker_factorio_server/blob/master/0.14/Dockerfile)
@ -182,6 +182,31 @@ Create file `config/server-adminlist.json` and add the adminlisted users.
"friend"
]
## Customize configuration files (0.17.x+)
Out-of-the box, factorio does not support environment variables inside the configuration files. A workaround is the usage of `envsubst` which generates the configuration files dynamically during startup from environment variables set in docker-compose:
Example which replaces the server-settings.json:
factorio_1:
image: dtanders/factorio
ports:
- "34197:34197/udp"
volumes:
- /opt/factorio:/factorio
- ./server-settings.json:/server-settings.json
environment:
- INSTANCE_NAME=Your Instance's Name
- INSTANCE_DESC=Your Instance's Description
entrypoint: /bin/sh -c "mkdir -p /factorio/config && envsubst < /server-settings.json > /factorio/config/server-settings.json && exec /docker-entrypoint.sh"
The `server-settings.json` file may then contain the variable references like this:
"name": "${INSTANCE_NAME}",
"description": "${INSTANCE_DESC}",
# Container Details
The philosophy is to [keep it simple](http://wiki.c2.com/?KeepItSimple).
@ -195,20 +220,22 @@ The philosophy is to [keep it simple](http://wiki.c2.com/?KeepItSimple).
To keep things simple, the container uses a single volume mounted at `/factorio`. This volume stores configuration, mods, and saves.
The files in this volume should be owned by the factorio user, uid 845.
factorio
|-- config
| |-- map-gen-settings.json
| |-- map-settings.json
| |-- rconpw
| |-- server-settings.json
| |-- server-whitelist.json
| |-- server-adminlist.json
| |-- server-banlist.json
| `-- server-adminlist.json
| |-- server-settings.json
| `-- server-whitelist.json
|-- mods
| `-- fancymod.zip
`-- saves
`-- _autosave1.zip
## Docker Compose
[Docker Compose](https://docs.docker.com/compose/install/) is an easy way to run Docker containers.
@ -280,17 +307,17 @@ sudo docker run -d \
dtandersen/factorio
```
VirtualBox users must enable Bridged networking in order for the host to be assigned an internal network IP. Enable Bridged networking in Vagrant with:
## Vagrant
[Vagrant](https://www.vagrantup.com/) is a easy way to setup a virtual machine (VM) to run Docker. The [Factorio Vagrant box repository](https://github.com/dtandersen/factorio-lan-vagrant) contains a sample Vagrantfile.
For LAN games the VM needs an internal IP in order for clients to connect. One way to do this is with a public network. The VM uses DHCP to acquire an IP address. The VM must also forward port 34197.
```
config.vm.network "public_network"
config.vm.network "forwarded_port", guest: 34197, host: 34197
```
## Vagrant
Vagrant is a good way for those without a Linux machine to try Docker. Check out the [Factorio Vagrant Box](https://github.com/dtandersen/factorio-lan-vagrant).
## Troubleshooting
**My server is listed in the server browser, but nobody can connect**
@ -310,6 +337,7 @@ Use the `PORT` environment variable to start the server on the a different port,
* [dtandersen](https://github.com/dtandersen/docker_factorio_server) - Maintainer
* [Fank](https://github.com/Fankserver/docker-factorio-watchdog) - Keeper of the Factorio watchdog that keeps the version up-to-date.
* [DBendit](https://github.com/DBendit/docker_factorio_server) - Admin list, ban list, version updates
* [Zopanix](https://github.com/zopanix/docker_factorio_server) - Originator
* [Rfvgyhn](https://github.com/Rfvgyhn/docker-factorio) - Randomly generate RCON password
* [gnomus](https://github.com/gnomus/docker_factorio_server) - White listing