bateau84 / openttd Goto Github PK
View Code? Open in Web Editor NEWopenttd docker container
Home Page: https://registry.hub.docker.com/u/bateau/openttd/
openttd docker container
Home Page: https://registry.hub.docker.com/u/bateau/openttd/
Could you build openttd with multi arch manifests for amd64, arm and arm64/aarch64?
I'm getting:
/openttd.sh: 15: [: /home/openttd: unexpected operator
But the game seems to start anyways.
Hello I have a problem with this docker container. The documentation talk about a .openttd directory but what about the openttd.cfg ? Should I create it manually ? Where to place it ?
I tryed to put one on .openttd/openttd.cfg but no effect ...
Thank you in advance for your help :)
Hello
I have an issue using the image, namely (auto) saving. The config file is loaded, and I am seemingly able to load a save file, but saving itself fails - I figure due to some writing permission issues.
Image: bateau/openttd:latest
System: Synology DS918+
Volume: docker/openttd
, mounted to /home/openttd/.openttd
RW
Env:
Above PGID/PUID from local user "docker": uid=1026(docker) gid=100(users) groups=100(users)
Also attempted to "chown -R" my local folder, docker/openttd
as follows: drwxrwxrwx+ 1 docker users
Still, the log indicates the below errors. What am I missing?
2020-03-24 19:57:21 stdout usermod: user openttd is currently used by process 1
2020-03-24 19:57:21 stdout groupmod: Permission denied.
2020-03-24 19:57:21 stdout groupmod: cannot lock /etc/group; try again later.
2020-03-24 19:57:21 stdout /openttd.sh: 15: [: /home/openttd: unexpected operator
2020-03-24 19:57:21 stdout
2020-03-24 19:57:21 stdout -----------------------------------
2020-03-24 19:57:21 stdout GID/UID
2020-03-24 19:57:21 stdout -----------------------------------
2020-03-24 19:57:21 stdout User uid: 1000
2020-03-24 19:57:21 stdout User gid: 1000
2020-03-24 19:57:21 stdout User Home: /home/openttd
2020-03-24 19:57:21 stdout -----------------------------------
2020-03-24 19:57:21 stdout
2020-03-24 19:57:21 stdout We are loading a save game!
2020-03-24 19:57:21 stdout Lets load /home/openttd/.openttd/save/game.sav
2020-03-24 19:57:21 stdout dbg: [net] Starting dedicated version 1.9.3
2020-03-24 19:57:21 stdout dbg: [net] [core] starting network...
2020-03-24 19:57:21 stdout dbg: [net] [udp] initializing listeners
2020-03-24 19:57:21 stdout dbg: [net] [core] network online, multiplayer available
2020-03-24 19:57:21 stdout dbg: [net] Detected broadcast addresses:
2020-03-24 19:57:21 stdout dbg: [net] 0) 172.17.255.255
2020-03-24 19:57:21 stdout dbg: [net] [udp] closed listeners
2020-03-24 19:57:21 stdout dbg: [net] [udp] initializing listeners
2020-03-24 19:57:21 stdout dbg: [net] [udp] closed listeners
2020-03-24 19:57:21 stdout dbg: [net] [udp] initializing listeners
2020-03-24 19:57:21 stdout dbg: [net] starting listeners for clients
2020-03-24 19:57:21 stdout dbg: [net] [tcp] listening on IPv4 port 0.0.0.0:3979 (IPv4)
2020-03-24 19:57:21 stdout dbg: [net] starting listeners for admins
2020-03-24 19:57:21 stdout dbg: [net] [tcp] listening on IPv4 port 0.0.0.0:3977 (IPv4)
2020-03-24 19:57:21 stdout dbg: [net] starting listeners for incoming server queries
2020-03-24 19:57:21 stdout dbg: [net] [udp] listening on IPv4 port 0.0.0.0:3979 (IPv4)
2020-03-24 19:57:21 stdout *** Game paused (number of players)
2020-03-24 19:57:24 stdout dbg: [net] Network revision name is '1.9.3'
2020-03-24 19:57:24 stdout dbg: [net] [udp] queried from 172.17.0.1
2020-03-24 19:57:34 stdout dbg: [net] [udp] queried from 172.17.0.1
2020-03-24 19:57:34 stdout dbg: [net] [server] Client connected from 172.17.0.1 on frame 128
2020-03-24 19:57:34 stdout dbg: [net] Closed client connection 2
2020-03-24 19:57:38 stdout dbg: [net] [server] Client connected from 172.17.0.1 on frame 169
2020-03-24 19:57:42 stdout *** Game still paused (connecting clients, number of players)
2020-03-24 19:57:43 stdout *** Player has joined the game (Client #3)
2020-03-24 19:57:43 stdout *** Game still paused (number of players)
2020-03-24 19:57:43 stdout *** Game unpaused (number of players)
2020-03-24 19:57:54 stdout dbg: [net] [rcon] client-id 3 executed: 'save test2'
2020-03-24 19:57:54 stdout dbg: [sl] Game Save Failed
2020-03-24 19:57:54 stdout File not writeable
2020-03-24 19:58:40 stdout dbg: [sl] Game Save Failed
2020-03-24 19:58:40 stdout File not writeable
2020-03-24 19:58:40 stdout ERROR: Autosave failed
It looks like OpenTTD haven't released .deb files for the OpenTTD 13.0 release, the CI/CD build to DockerHub fails due to this
Again, really happy with this docker image & thank you for putting it together!
It's working like a dream, but I'm noticing that when the docker container is stopped & restarted, the exit.sav file (autosave function) is 0 bytes. So it seems that the container is shut down before the save file has been generated. Perhaps a longer wait time needs to be built into the shutdown script for this to function? (not sure on how these things work with Docker)
As posted previously, running on a Synology DS216+II
Hi!
I'm probably doing something wrong, but I get the container up and running, and also can see the server in the game browser when adding it.
But the client lists "Server version: 1.5.3" even though I've tried :latest and :1.6.1
The docker log says "Starting dedicated version 1.6.1"
Any clue what's up?
Can it be changed? I have a really big map and need to change it since the planes are too slow and don't make any sense.
I know it cannot be changed for multiplayer games, but can it be forced somehow? hacking the save?
background:
I have a server almost one year old and people playing in it.
I´ve generatet a save file in the game, and put on my server at: /home/openttd/saves/game.save
And tryed to user this docker command:
sudo docker run -it --rm -e PUID=1000 -e PGID=1000 -p 3979:3979/tcp -p 3979:3979/udp -v /home/openttd/saves:/home/openttd/.openttd -e "loadgame=true" -e "savepath=/home/openttd/saves" -e "savename=game.save" --name openttd-server bateau/openttd:12.2
What am i doing whrong?
I've always shied away from docker. So im very new to this topic. but after reading documentation's, and other poples problems, i cant find the problem my self.
It works when i try to run it with just "savepath=/home/openttd/saves" -e “loadgame=last-autosave"
.
Saving and loading works, but my saves folder is empty. Afer restarting the docker container, the savegames are lost, and cant be loadet with the "load" command anymore.
Hi, just wanted to mention that on the docker it's listed as "autosave" for loading the last one. However, in your code on here, it looks like it's actually loading "last-autosave" instead.
It seems like the documentation suggests to use 'savegame=...' - but it should be 'savename=...'
please im going insane your thing is the only thing ive found that actually works and manages to load our save but theres a version mismatch
idk hw to do docker myself can you please update it thank you xxx
Hi there,
Any plans to add ARM comparability to the docker container at some point?
Michael
Hi!
You are currently using an old URL for OpenTTD downloads here:
Line 21 in 6038f23
proxy.binaries.openttd.org
has been replaced with cdn.openttd.org
a few months back. You already changed this for OpenGFX here:
Possibly a good idea to also change the other to point to cdn.openttd.org
, as proxy.binaries.openttd.org
will retire somewhere in the future (it currently redirects you to cdn.openttd.org
).
https://cdn.openttd.org/openttd-releases/
Contains all official releases ever made by OpenTTD.
Thank you!
PS: if you want to verify cdn.openttd.org is the correct URL: check the download links on https://www.openttd.org/downloads/openttd-releases/latest.html
While the code on this Github repository seems to be up to version 1.6.1 the Docker Hub repo seems to be only on version 1.6.1-RC1 (https://hub.docker.com/r/bateau/openttd/tags/).
When you can could the Docker repo be updated to the latest 1.6.1 build.
Thanks in advance and for the work on the Docker container so far.
Hello,
thank you for this great repository, finally an idea attractive and educative enough to get me into Docker. I've read through the available documentation, studied and understood most of the committed files and succeeded in deploying an OpenTTD server using Docker on Ubuntu 18.04 in Azure. (My attempt with Azure Container Instances failed on inability to expose TCP and UDP on 3979 properly so it deployed, but was not reachable)
When I examine the running container I notice an unpleasant lack of openttd.cfg file which I would like to modify. I did not make use of the k8s orchestration yet, the file failed to validate for me, despite some efforts. Also there is -x parameter, preventing config changes to be saved and it seems intentional, why is it? I would be very grateful for some directions on how to manage the config file properly. Thanks in advance.
The README refers to an example for deploying the openttd container on a k8s cluster, but I can't find it in the repo.
I need a configuration file, at least an example.
I have not found a standard example anywhere.
Nowhere is there information on the detailed configuration of a dedicated server.
All I need, is a standard configuration file, to replace the server name, that's all.
Could you provide a standard configuration file with which this container works out of the box.
So that I can make changes to it by changing the name of the server. I do not need to read the wiki, please do not copy the link to the wiki here. I need a normal example configuration file.
Sorry for my stupidity. I have play with m$, linux servers and many different dedicated servers virtualization etc and I have an image in my head how docker works... But I can't get my mind bend over this.
Could you please, please, please provide some basic usage commands and config manual for openttd + docker.
... I just f**** hate all this extra bs around docker. Change my mind.
Hey!
I see that you are using an automated script for generating images for all versions specified in the releases
file and tagging the appropriate version in docker. It would be helpful if you also tagged the latest
tag (which is currently some old version) so it would be possible to just run docker run bateau/openttd
and get the latest OpenTTD.
It should be possible if you just pull the latest release using head -1 releases
and make a new build which is tagged latest
. What do you think?
Hello, the README here on Github as well as on Docker hub has a mistake in naming the variable for a savegame "savegame". But the container expects "savename".
Otherwise, thanks for the image!
My files are under /home/openttd/.local/share/save ? also with env savepath:/home/openttd Portainer
i cant use them with loadgam:last-autosave
Right now I don't see an option for a custom config file being used, and I see the line -c "/usr/share/games/openttd/openttd
used throughout the openttd.sh file
Would it be possible to do a variable that enabled a custom config file to be used? Something like config=true
or config=<PATH>
?
Please let me know if I'm doing something wrong. I've tried putting the config file in .openttd and in .config/openttd without luck.
Currently there's a version mismatch when running the latest version of this container and latest version of OpenTTD
Container version: 13.0-RC1
OpenTTD verison: 13.3
First of all: Thank you so much for creating this!
I'm running your docker file through my Synology and have set user permissions appropriately, etc.
It took me a long time to figure this out, but it seems to be that your server is looking for saves in the path set, but is actually saving them somewhere else for me.
I'm probably doing something wrong, but all save files are being created here:
/home/openttd/.local/share/openttd/save
Using the -v command, I'm connecting /home/openttd/.openttd through Docker. The dedicated server is loading the openttd.cfg file from there perfectly, has populated that folder with all subfolders, but for some reason, all save files are going elsewhere.
When launching the container with no previous save the new game created appears as a 0x0 server which cannot be connected to. I'm not sure if i'm just not launching it correctly or if its failing to correctly load the game. When launching i use the command given in the example section of the README
Does this work with OpenTTD 1.9.1 or is 1.9.1 compatible with 1.9.0?
Is there a way to mitigate the lagspikes that happen when autosaving without changing the autosave-interval?
Hey!
Maybe I'm dumb but...
I'm trying to run an openttd server that I can just spin up (providing an existing openttd.cfg file). I'm expecting it to create a new map if none has been initialized yet but load a savegame if it's already present. I set save_on_exit to 1 in the config and the savegame is written if I initialize the server without -e loadgame but if I provide -e loadgame=exit it expects the file to already be there. That way I will have to recreate the container twice everytime I want to reset the map, surely that can't be the best way?
Help please! :D
Is it possible to update the Dockerfile to 1.10.2?
It still indicates 1.10.1:
ARG OPENTTD_VERSION="1.10.1"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.