gameservermanagers / docker-linuxgsm Goto Github PK
View Code? Open in Web Editor NEWLinuxGSM base docker image
License: MIT License
LinuxGSM base docker image
License: MIT License
Have an issue with linuxgsm failing because the entrypoint.sh tries to download and install before the network is initialized.
can a delay be added to wait for a full response from the internet before it begins the processes in entrypoint-user.sh?
a simple while loop works but obviously not if I have to reload the docker image
#pause for network start
while ! ping -c 4 google.com > /dev/null;
do
echo -e "Waiting for internet connection."
sleep 10
done
Providing a gamename of <game>-<number>
does not create (copy) the linuxgsm script to that name and therefore the container does not start.
my test cases are:
What is the preferred way you'd like to implement this, I can provide a PR if necessary
When entrypoint-user.sh
executes tail -F "${LGSM_LOGDIR}"/*/*.log &
, it prints out the last few lines of log content to stdout. This means if you have a large amount of game server logs, a lot of logs are sent to stdout, which is rather spammy.
Can this be configurable? I don't necessarily need or want all my historical log files, that aren't going to be changing again) to be tailed every time I start the container.
I have a separate user for LGSM related docker images on my server. Following the new docker-compose examples from https://github.com/GameServerManagers/docker-gameserver/tree/main, the default linuxgsm user in the docker image has the default UID 1000, which leads to the mounted volumes changing ownership to the host user with UID 1000, which isn't the UID of my LGSM host user (note, I'm using bind mounts).
To retain the original host ownerships, I tried using the UID and GID environment variables in the docker-compose file to match the ones of my LGSM host user. This however leads to permission errors when installing the gameserver and fetching lgsm scripts, as the /app directory permissions are set to UID 1000.
Fixing this would be pretty straightforward by adding another chown to the entrypoint.sh, that changes ownership of /app to the UID and GID provided by docker compose.
Example docker compose:
version: '3.4'
services:
linuxgsm:
image: gameservermanagers/gameserver:mc
container_name: mc_test
volumes:
- /home/gameservers/mc_test:/data
restart: unless-stopped
environment:
- UID=1006
- GID=1007
- USER=linuxgsm
Reading through https://docs.linuxgsm.com/commands/mods#install-mods it looks like the server needs to run ./gameserver mods-install
upon startup. It would be nice if the entry script provided an option to handle this.
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.