jusito / docker-ttt Goto Github PK
View Code? Open in Web Editor NEWGMOD TTT server image
Home Page: https://hub.docker.com/r/jusito/docker-ttt
License: MIT License
GMOD TTT server image
Home Page: https://hub.docker.com/r/jusito/docker-ttt
License: MIT License
Hi Jusito
There was already a similar issue opened by someone else and I have the same problem. Here is a screenshot of the log (you can ignore the server name :-D ):
At this state, nothing happens and I can not connect to the server.
That's the docker-compose I use:
services:
ttt:
image: jusito/docker-ttt:gmod_ttt_debian-develop
ports:
- 27015:27015/tcp
- 27015:27015/udp
environment:
INSTALL_CSS: "true"
INSTALL_HL2: "true"
SERVER_PORT: 27015
SERVER_VOICE_ENABLE: 0
SERVER_MAX_PLAYERS: 10
SERVER_RCON_PASSWORD: ${PPP}
WORKSHOP_COLLECTION_ID: 1895900191
SERVER_NAME: "Test name"
SERVER_PASSWORD: ${PPP}"
SERVER_DEFAULT_MAP: "ttt_lttp_kakariko_a4"
mem_limit: "10g"
volumes:
- ./TTTDev1:/home/steam/serverfiles
I also tried the answer you gave to the other person with the same problem but that didn't help because I got validation errors since the docker-compose then becomes invalid.
Do you have an idea what could be the problem?
Thank you in advance.
Kind regards
Hey,
I am currently trying to setup a TTT server using your image. I tried to provide my own environment variables and the default ones and the container gets always stuck in a loop while checking for GitHub module lgsm, since it always restarts the checking process.
fetching GitHub core_logs.sh...OK
[ .... ] Starting gmodserver: MyServerName
[ OK ] Starting gmodserver: MyServerName
stopping server...
[entrypoint.sh]starting entrypoint.sh
[entrypoint.sh]updating...
[ .... ] Updating LinuxGSM gmodserver:
[ .... ] Updating LinuxGSM gmodserver: Selecting repo
[ OK ] Updating LinuxGSM gmodserver: Selecting repo: GitHub
checking GitHub linuxgsm.sh...OK
checking gmodserver...OK
checking GitHub config _default.cfg...OK
checking GitHub config debian-10.csv...OK
checking GitHub module check.sh...OK
checking GitHub module check_config.sh...OK
checking GitHub module check_deps.sh...OK
checking GitHub module check_executable.sh...OK
checking GitHub module check_glibc.sh...OK
checking GitHub module check_ip.sh...OK
checking GitHub module check_logs.sh...OK
checking GitHub module check_permissions.sh...OK
checking GitHub module check_root.sh...OK
checking GitHub module check_status.sh...OK
checking GitHub module check_steamcmd.sh...OK
checking GitHub module check_system_dir.sh...OK
checking GitHub module check_system_requirements.sh...OK
checking GitHub module check_tmuxception.sh...OK
checking GitHub module check_version.sh...OK
checking GitHub module command_install.sh...OK
checking GitHub module command_monitor.sh...OK
checking GitHub module command_start.sh...OK
checking GitHub module command_update_linuxgsm.sh...OK
checking GitHub module core_dl.sh...OK
checking GitHub module core_exit.sh...OK
checking GitHub module core_functions.sh...OK
checking GitHub module core_getopt.sh...OK
checking GitHub module core_legacy.sh...OK
checking GitHub module core_logs.sh...OK
checking GitHub module core_messages.sh...OK
checking GitHub module core_steamcmd.sh...OK
checking GitHub module core_trap.sh...OK
checking GitHub module fix.sh...OK
checking GitHub module fix_steamcmd.sh...OK
checking GitHub module info_distro.sh...OK
checking GitHub module info_game.sh...OK
checking GitHub module install_complete.sh...OK
checking GitHub module install_config.sh...OK
checking GitHub module install_gslt.sh...OK
checking GitHub module install_header.sh...OK
checking GitHub module install_logs.sh...OK
checking GitHub module install_server_dir.sh...OK
checking GitHub module install_server_files.sh...OK
checking GitHub module install_stats.sh...OK
checking GitHub module install_steamcmd.sh...OK
checking GitHub module lgsm...ERROR
rm: cannot remove 'lgsm': Is a directory
removing module lgsm...FAIL
[entrypoint.sh]starting entrypoint.sh
[entrypoint.sh]updating...
[ .... ] Updating LinuxGSM gmodserver:
[ .... ] Updating LinuxGSM gmodserver: Selecting repo
[ OK ] Updating LinuxGSM gmodserver: Selecting repo: GitHub
checking GitHub linuxgsm.sh...OK
checking gmodserver...OK
checking GitHub config _default.cfg...OK
checking GitHub config debian-10.csv...OK
checking GitHub module check.sh...OK
checking GitHub module check_config.sh...OK
checking GitHub module check_deps.sh...OK
checking GitHub module check_executable.sh...OK
checking GitHub module check_glibc.sh...OK
checking GitHub module check_ip.sh...OK
checking GitHub module check_logs.sh...OK
checking GitHub module check_permissions.sh...OK
checking GitHub module check_root.sh...OK
checking GitHub module check_status.sh...OK
checking GitHub module check_steamcmd.sh...OK
checking GitHub module check_system_dir.sh...OK
checking GitHub module check_system_requirements.sh...OK
checking GitHub module check_tmuxception.sh...OK
checking GitHub module check_version.sh...OK
First of all: Thanks for maintaining this container! I'm trying to use this image on a Kubernetes k3s cluster and having problems with the volume permissions. I have added a a user ttt
with userid 10000 and configured Kubernetes to use that user to run the container and mount the volume:
---
...
spec:
...
template:
...
spec:
securityContext:
runAsUser: 10000
runAsGroup: 10000
fsGroup: 10000
containers:
- name: docker-ttt
image: jusito/docker-ttt:gmod_ttt_debian
I can see the volume getting created, and the ttt
user being set as the owner. And it getting filled with the "garrysmod" folder:
However, there still seem to be permission problems. I think when I used static volumes, I solved this by running chmod on the volume folder, but this didn't help now either (even from inside the container). I know that this image is originally designed for bare docker/docker-compose usage, but it would still be awesome if you have an idea on what might be going wrong or can point me in the direction what I need to check again.
Remember to check server ports
./gmodserver details
fetching GitHub core_trap.sh...OK
fetching GitHub _default.cfg...OK
copying _default.cfg...OK
fetching GitHub check_ip.sh...OK
fetching GitHub info_game.sh...OK
fetching GitHub common.cfg...OK
fetching GitHub secrets-common.cfg...OK
fetching GitHub gmodserver.cfg...OK
fetching GitHub secrets-gmodserver.cfg...OK
fetching GitHub linuxgsm.sh...OK
fetching GitHub core_getopt.sh...OK
fetching GitHub command_install.sh...OK
fetching GitHub check.sh...OK
fetching GitHub check_version.sh...OK
[ ERROR ] Installing gmodserver: LinuxGSM version mismatch
fetching GitHub command_update_linuxgsm.sh...OK
fetching GitHub check_root.sh...OK
fetching GitHub check_tmuxception.sh...OK
fetching GitHub check_permissions.sh...OK
[ FAIL ] Updating LinuxGSM gmodserver: Ownership issues found
Information! The current user (steam) does not have ownership of the following files:
tee: /home/steam/log/script/gmodserver-script.log: No such file or directory
User Group File
root root /home/steam/serverfiles
Information! please see https://docs.linuxgsm.com/support/faq#fail-starting-game-server-permission-issues-found
fetching GitHub core_exit.sh...OK
fetching GitHub check_logs.sh...OK
[ INFO ] Updating LinuxGSM gmodserver: Checking for log files: Creating log files
fetching GitHub install_logs.sh...OK
installing log dir: /home/steam/log...OK
installing LinuxGSM log dir: /home/steam/log/script...OK
creating LinuxGSM log: /home/steam/log/script/gmodserver-script.log...OK
installing console log dir: /home/steam/log/console...OK
creating console log: /home/steam/log/console/gmodserver-console.log...OK
creating symlink to game log dir: /home/steam/log/server -> /home/steam/serverfiles/garrysmod/logs...OK
fetching GitHub info_distro.sh...OK
[ OK ] Updating LinuxGSM gmodserver: Selecting repo: GitHub
checking GitHub linuxgsm.sh...OK
checking gmodserver...UPDATE
backup gmodserver...OK
backup location /home/steam/lgsm/backup/script/gmodserver-09_27_2023_24.bak
copying gmodserver...OK
checking GitHub config _default.cfg...OK
checking GitHub module check.sh...OK
checking GitHub module check_ip.sh...OK
checking GitHub module check_logs.sh...OK
checking GitHub module check_permissions.sh...OK
checking GitHub module check_root.sh...OK
checking GitHub module check_tmuxception.sh...OK
checking GitHub module check_version.sh...OK
checking GitHub module command_install.sh...OK
checking GitHub module command_update_linuxgsm.sh...OK
checking GitHub module core_dl.sh...OK
checking GitHub module core_exit.sh...OK
checking GitHub module core_functions.sh...OK
checking GitHub module core_getopt.sh...OK
checking GitHub module core_legacy.sh...OK
checking GitHub module core_messages.sh...OK
checking GitHub module core_trap.sh...OK
checking GitHub module info_distro.sh...OK
checking GitHub module info_game.sh...OK
checking GitHub module install_logs.sh...OK
[ OK ] Updating LinuxGSM gmodserver: Updating functions
[entrypoint.sh]update / installation done!
[prepareServer.sh]check configurations
[initConfig.sh]Request for replacing hostname to "(redacted)", source is found 1 times
[initConfig.sh]Request for replacing sv_password to "(redacted)", source is found 1 times
[initConfig.sh]Request for replacing sv_voiceenable to "0", source is found 1 times
[prepareServer.sh]force workshop download
[forceWorkshopDownload.sh]processing workshop collection 3036970017
[prepareServer.sh]install & mount gamefiles
./installAndMountAddons.sh: line 10: cd: /home/steam/.steam/steamcmd: No such file or directory
Hey justito, i need the -allowlocalhttp flag for a Discord Muter. At the startup im set the ENV var like this:
-e SERVER_ADDITIONAL_PARAMETERS="-disableluarefresh -allowlocalhttp"
is it possible to see if that worked? I have a problem with the Discord Muter that points to it
Thanks!
This simple docker-compose works in a debian 12 VM, but not on macOS.
Using a MacBook Pro M2 with macOS Sonoma.
~ ❯ docker-compose --version 19:55:00
Docker Compose version v2.23.0-desktop.1
~ ❯ docker --version 19:55:07
Docker version 24.0.7, build afdd53b4e3
version: '3.8'
services:
server:
image: jusito/docker-ttt:gmod_ttt_debian
container_name: ttt-server
ports:
- "27015:27015/tcp"
- "27015:27015/udp"
environment:
- SERVER_PORT=27015
- INSTALL_CSS=true
- WORKSHOP_COLLECTION_ID=2176094350
- SERVER_NAME=My Server
- SERVER_PASSWORD=server-password
- SERVER_DEFAULT_MAP=ttt_waterworld
[+] Building 0.0s (0/0) docker:desktop-linux
[+] Running 3/0
✔ Network ttt_default Created 0.0s
✔ Container ttt-server Created 0.0s
! server The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested 0.0s
Attaching to ttt-server
ttt-server | [entrypoint.sh]starting entrypoint.sh
ttt-server | [entrypoint.sh]installing...
Installed Garrys Mod server as gmodserver
ttt-server |
ttt-server | Remember to check server ports
ttt-server | ./gmodserver details
ttt-server |
fetching GitHub core_trap.sh...OK
ttt-server | fetching GitHub _default.cfg...OK
ttt-server | copying _default.cfg...OK
ttt-server | fetching GitHub check_ip.sh...OK
ttt-server | fetching GitHub info_game.sh...OK
ttt-server | fetching GitHub common.cfg...OK
ttt-server | fetching GitHub secrets-common.cfg...OK
ttt-server | fetching GitHub gmodserver.cfg...OK
ttt-server | fetching GitHub secrets-gmodserver.cfg...OK
ttt-server | fetching GitHub linuxgsm.sh...OK
ttt-server | fetching GitHub core_getopt.sh...OK
ttt-server | fetching GitHub command_install.sh...OK
ttt-server | fetching GitHub check.sh...OK
ttt-server | fetching GitHub check_version.sh...OK
ttt-server | fetching GitHub check_tmuxception.sh...OK
ttt-server | fetching GitHub check_permissions.sh...OK
ttt-server | fetching GitHub check_glibc.sh...OK
ttt-server | fetching GitHub info_distro.sh...OK
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | fetching GitHub check_system_requirements.sh...OK
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | fetching GitHub install_header.sh...OK
ttt-server |
ttt-server | mdMMMMbm
ttt-server | mMMMMMMMMMMm
ttt-server | mMMMMMMMMMMMMm
ttt-server | mMMMMMMMMMMMMMMm
ttt-server | hMMMV^VMMV^VMMMh
ttt-server | MMMMM MM MMMMM
ttt-server | hMMs vv sMMh
ttt-server | hMMM: :MMMh
ttt-server | .hMMMh hMMMh.
ttt-server | -dMMMh __ hMMMd-
ttt-server | :mMMMs || sMMMm:
ttt-server | :MMMM+ || _ +NMMN:
ttt-server | .mMMM+ ======== +MMMm.
ttt-server | yMMMy ############## yMMMy
ttt-server | mMMM: ############## :MMMm
ttt-server | mMM nn nn nn nn MMm
ttt-server | o nNNNNNNNn nNNNNNNNn o
ttt-server | nNNNNNNNNNn nNNNNNNNNNn
ttt-server | nNNNNNNNNNNN NNNNNNNNNNNn
ttt-server | +NNNNNNNNN: :NNNNNNNNN+
ttt-server | nNNNNNNN /\ NNNNNNNn
ttt-server | nnnnn db nnnnn
ttt-server |
ttt-server | 888 d8b .d8888b. .d8888b. 888b d888
ttt-server | 888 Y8P d88P Y88b d88P Y88b 8888b d8888
ttt-server | 888 888 888 Y88b. 88888b.d88888
ttt-server | 888 888 88888b. 888 888 888 888 888 Y888b. 888Y88888P888
ttt-server | 888 888 888 88b 888 888 Y8bd8P 888 88888 Y88b. 888 Y888P 888
ttt-server | 888 888 888 888 888 888 X88K 888 888 888 888 Y8P 888
ttt-server | 888 888 888 888 Y88b 88Y .d8pq8b. Y88b d88P Y88b d88P 888 * 888
ttt-server | LinuxGSM 888 888 888 Y8888Y 888 888 Y2012P88 Y8888P 888 888
ttt-server |
ttt-server | =================================
ttt-server | LinuxGSM_
ttt-server | by Daniel Gibbs
ttt-server | Version: v23.5.3
ttt-server | Game: Garry's Mod
ttt-server | Website: https://linuxgsm.com
ttt-server | Contributors: https://linuxgsm.com/contrib
ttt-server | Sponsor: https://linuxgsm.com/sponsor
ttt-server | =================================
ttt-server | fetching GitHub install_server_dir.sh...OK
ttt-server |
ttt-server | Server Directory
ttt-server | =================================
ttt-server | Warning! A server is already installed here.
ttt-server | /home/steam
ttt-server | fetching GitHub install_logs.sh...OK
ttt-server |
ttt-server | Creating log directories
ttt-server | =================================
ttt-server | installing log dir: /home/steam/log...OK
ttt-server | installing LinuxGSM log dir: /home/steam/log/script...OK
ttt-server | creating LinuxGSM log: /home/steam/log/script/gmodserver-script.log...OK
ttt-server | installing console log dir: /home/steam/log/console...OK
ttt-server | creating console log: /home/steam/log/console/gmodserver-console.log...OK
ttt-server | installing game log dir: /home/steam/serverfiles/garrysmod/logs...OK
ttt-server | creating symlink to game log dir: /home/steam/log/server -> /home/steam/serverfiles/garrysmod/logs...OK
ttt-server | fetching GitHub check_deps.sh...OK
ttt-server |
ttt-server | Checking Dependencies
ttt-server | =================================
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
fetching GitHub debian-10.csv...OK
ttt-server | bc
ttt-server | binutils
ttt-server | bsdmainutils
ttt-server | bzip2
ttt-server | ca-certificates
ttt-server | cpio
ttt-server | curl
ttt-server | distro-info
ttt-server | file
ttt-server | gzip
ttt-server | hostname
ttt-server | jq
ttt-server | lib32gcc1
ttt-server | lib32stdc++6
ttt-server | libsdl2-2.0-0:i386
ttt-server | libtinfo5:i386
ttt-server | netcat
ttt-server | python3
ttt-server | tar
ttt-server | tmux
ttt-server | unzip
ttt-server | util-linux
ttt-server | uuid-runtime
ttt-server | wget
ttt-server | xz-utils
ttt-server | Information! Required dependencies already installed.
ttt-server | fetching GitHub install_steamcmd.sh...OK
ttt-server |
ttt-server | Installing SteamCMD
ttt-server | =================================
ttt-server | fetching GitHub check_steamcmd.sh...OK
ttt-server | fetching GitHub core_steamcmd.sh...OK
######################################################################## 100.0%
ttt-server | OK
ttt-server | extracting steamcmd_linux.tar.gz...OK
ttt-server | fetching GitHub install_server_files.sh...OK
ttt-server |
ttt-server | Installing Garry's Mod Server
ttt-server | =================================
ttt-server | fetching GitHub update_steamcmd.sh...OK
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
ttt-server | Cannot open netlink socket: Protocol not supported
[ START ] Installing gmodserver: SteamCMD
ttt-server | Complete! Installing gmodserver: SteamCMD
[ ERROR ] Installing gmodserver: No appmanifest_4020.acf found
[ INFO ] Installing gmodserver: Forcing update to correct issue
[ START ] Installing gmodserver: SteamCMD
ttt-server | Complete! Installing gmodserver: SteamCMD
[ FAIL ] Installing gmodserver: Still no appmanifest_4020.acf found
ttt-server | fetching GitHub core_exit.sh...OK
ttt-server | [entrypoint.sh]update / installation done!
ttt-server | [prepareServer.sh]check configurations
ttt-server | [initConfig.sh]Request for replacing hostname to "My Server", source is found 1 times
ttt-server | [initConfig.sh]Request for replacing sv_password to "server-password", source is found 1 times
ttt-server | [initConfig.sh]Request for replacing sv_voiceenable to "1", source is found 1 times
ttt-server | [prepareServer.sh]force workshop download
ttt-server | [forceWorkshopDownload.sh]processing workshop collection 2176094350
ttt-server | [prepareServer.sh]install & mount gamefiles
ttt-server | [installAndMountAddons.sh]installing & mounting css
ttt-server exited with code 1
Just to clarify: Can the workshop collection which I'm using with the server-container only contain maps or assets and mods as well? Are there any limitations to what mods/plugins I can use with this image?
Hello, somehow my Container keeps exiting after a Certain point of starting up.
I uploaded the Container`s log in here. Could you please have a look at it? Maybe I did something wrong installing the Container.
logs.txt
Hello,
once the initial setup is done everything works fine. After i rebuild the Container whatsoever the following happening resulting in a exiting code = 1. If i delete the created folder everything works fine.
ttt | checking GitHub module core_legacy.sh...OK
ttt | checking GitHub module core_logs.sh...OK
ttt | checking GitHub module core_messages.sh...OK
ttt | checking GitHub module core_steamcmd.sh...OK
ttt | checking GitHub module core_trap.sh...OK
ttt | checking GitHub module fix.sh...OK
ttt | checking GitHub module fix_steamcmd.sh...OK
ttt | checking GitHub module info_distro.sh...OK
ttt | checking GitHub module info_game.sh...OK
ttt | checking GitHub module install_complete.sh...OK
ttt | checking GitHub module install_config.sh...OK
ttt | checking GitHub module install_gslt.sh...OK
ttt | checking GitHub module install_header.sh...OK
ttt | checking GitHub module install_logs.sh...OK
ttt | checking GitHub module install_server_dir.sh...OK
ttt | checking GitHub module install_server_files.sh...OK
ttt | checking GitHub module install_stats.sh...OK
ttt | checking GitHub module install_steamcmd.sh...OK
ttt | checking GitHub module lgsm...ERROR
ttt | rm: cannot remove 'lgsm': Is a directory
ttt | removing module lgsm...FAIL
When I start the container with:
sudo docker run -d \
-p 27015:27015/udp \
-e SERVER_PORT=27015 \
-e INSTALL_CSS=true \
-e SERVER_NAME="Skill0rzTTTServer" \
-e SERVER_PASSWORD="somepw" \
-e SERVER_DEFAULT_MAP="ttt_lttp_kakariko_a4" \
-v TTTDev:/home/steam/serverfiles \
-p 27015:27015/tcp \
-e SERVER_RCON_PASSWORD="somepw" \
--name "Skill0rzTTTServer" \
jusito/docker-ttt:latest
The container always crashes with an error message:
[prepareServer.sh]check configurations
[initConfig.sh]Request for replacing hostname to hostname "Skill0rzTTTServer", source is found 1 times
sed: -e expression #1, char 68: Invalid preceding regular expression
What can we do to fix it?
Hey, so I'm using a semi-modified version of the compose file in the root of this Project, but when the scripts get to [forceWorkshopDownload.sh]processing workshop collection
it will just exit with a code of 1
Using the latest image:
2023-04-15T11:00:46.170988530Z [entrypoint.sh]starting entrypoint.sh
2023-04-15T11:00:46.171279235Z [entrypoint.sh]installing...
2023-04-15T11:01:06.240351924Z fetching GitHub serverlist.csv...ERROR
2023-04-15T11:01:26.276263294Z fetching Bitbucket serverlist.csv...FAIL
2023-04-15T11:01:26.277041753Z linuxgsm.sh: line 129: core_exit.sh: command not found
2023-04-15T11:01:26.277654301Z [ FAIL ] serverlist.csv could not be loaded.
Googled a bit, seems like the problem occurs when curl is not installed but it is.
When I restart the container it fails to start again with the error noted below.
When recreating the container, it starts fine.
docker-compose up-d
# wait until server finished starting
docker restart ttt-server
version: '3.3'
services:
server:
container_name: ttt-server
restart: unless-stopped
image: jusito/docker-ttt:latest
ports:
- "27015:27015/tcp"
- "27015:27015/udp"
environment:
- "SERVER_NAME=NAME"
- "SERVER_PASSWORD=PW"
- "SERVER_PORT=27015"
- "WORKSHOP_COLLECTION_ID=COLLECTION_ID"
- "SERVER_DEFAULT_MAP=ttt_nether"
- "INSTALL_CSS=true"
- "TZ=Europe/Berlin"
volumes:
- ./data/ttt/:/home/steam/serverfiles/
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
[entrypoint.sh]starting entrypoint.sh
[entrypoint.sh]updating...
[ OK ] Updating LinuxGSM gmodserver: Selecting repo: GitHub
checking GitHub linuxgsm.sh...OK
checking gmodserver...OK
checking GitHub config _default.cfg...OK
checking GitHub config debian-10.csv...OK
checking GitHub module check.sh...OK
checking GitHub module check_config.sh...OK
checking GitHub module check_deps.sh...OK
checking GitHub module check_executable.sh...OK
checking GitHub module check_glibc.sh...OK
checking GitHub module check_ip.sh...OK
checking GitHub module check_logs.sh...OK
checking GitHub module check_permissions.sh...OK
checking GitHub module check_root.sh...OK
checking GitHub module check_status.sh...OK
checking GitHub module check_steamcmd.sh...OK
checking GitHub module check_system_dir.sh...OK
checking GitHub module check_system_requirements.sh...OK
checking GitHub module check_tmuxception.sh...OK
checking GitHub module check_version.sh...OK
checking GitHub module command_install.sh...OK
checking GitHub module command_start.sh...OK
checking GitHub module command_update_linuxgsm.sh...OK
checking GitHub module core_dl.sh...OK
checking GitHub module core_exit.sh...OK
checking GitHub module core_functions.sh...OK
checking GitHub module core_getopt.sh...OK
checking GitHub module core_legacy.sh...OK
checking GitHub module core_logs.sh...OK
checking GitHub module core_messages.sh...OK
checking GitHub module core_steamcmd.sh...OK
checking GitHub module core_trap.sh...OK
checking GitHub module fix.sh...OK
checking GitHub module fix_steamcmd.sh...OK
checking GitHub module info_distro.sh...OK
checking GitHub module info_game.sh...OK
checking GitHub module install_complete.sh...OK
checking GitHub module install_config.sh...OK
checking GitHub module install_gslt.sh...OK
checking GitHub module install_header.sh...OK
checking GitHub module install_logs.sh...OK
checking GitHub module install_server_dir.sh...OK
checking GitHub module install_server_files.sh...OK
checking GitHub module install_stats.sh...OK
checking GitHub module install_steamcmd.sh...OK
checking GitHub module lgsm...ERROR
rm: cannot remove 'lgsm': Is a directory
removing module lgsm...FAIL
Hi,
i wanted to use your image within my container management tool portainer.
But I cant get it working.
version: '3.3'
services:
db:
image: jusito/docker-ttt:gmod_ttt_debian
environment:
SERVER_PORT: "27015"
INSTALL_CSS: "true"
WORKSHOP_COLLECTION_ID: "589908800"
SERVER_NAME: "my-ttt-server"
SERVER_PASSWORD: "MYSECPAW"
SERVER_DEFAULT_MAP: "ttt_lttp_kakariko_a4"
SERVER_RCON_PASSWORD: "MYSECRCPAW"
SERVER_IP: "172.18.0.12"
volumes:
- "ttt_data:/home/steam/serverfiles"
ports:
- "27015:27015/tcp"
volumes:
ttt_data:
external:
name: ttt_data
It seems like the server starts succesfull but i cannot connect.
Furthermore i get some strange server logs:
Starting gmodserver: Applying steamclient.so sdk32 fix: Garry's Mod
[ INFO ] Starting gmodserver: Applying steamclient.so sdk32 fix: Garry's Mod
[ OK ] Starting gmodserver: Applying steamclient.so sdk32 fix: Garry's Mod
fetching GitHub core_logs.sh...OK
[ .... ]
And i needed to provide a SERVER_IP
as otherwise i would get some error message.
Any thoughts?
I expect I've got something misconfigured, but I'm unable to get the server to start, as it appears to fail due to a permissions issue while creating a log file.
+ set -o errexit
+ set -o nounset
+ set -o pipefail
+ echo '[entrypoint.sh]starting entrypoint.sh'
+ set -e
+ cd /home/steam
[entrypoint.sh]starting entrypoint.sh
+ '[' -n gmodserver ']'
+ '[' -e /home/steam/gmodserver ']'
+ echo '[entrypoint.sh]installing...'
+ bash linuxgsm.sh gmodserver
[entrypoint.sh]installing...
Remember to check server ports
./gmodserver details
+ ./gmodserver auto-install
�[36mInformation!�[0m The current user (steam) does not have ownership of the following files:
tee: /home/steam/log/script/gmodserver-script.log: No such file or directory
User Group File
99 users /home/steam/serverfiles
�[36mInformation!�[0m please see https://docs.linuxgsm.com/support/faq#fail-starting-game-server-permission-issues-found
+ echo '[entrypoint.sh]update / installation done!'
+ '[' -e /home/prepareServer.sh ']'
+ cd /home
+ ./prepareServer.sh
+ set -o errexit
+ set -o nounset
+ mkdir -p /home/steam/lgsm/config-lgsm/gmodserver/
+ cp -f /home/common.cfg /home/steam/lgsm/config-lgsm/gmodserver/common.cfg
+ cd /home
[prepareServer.sh]check configurations
+ echo [prepareServer.sh]check configurations
+ ./initConfig.sh
+ set -o errexit
+ set -o nounset
+ set -o pipefail
+ CFG_PATH=/home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
+ '[' '!' -e /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg ']'
+ mkdir -p /home/steam/serverfiles/garrysmod/cfg
+ cp -f /home/server.cfg.default /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
+ chown 10000:10000 /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
+ chmod u+rw /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
+ '[' -n Lynx ']'
+ configReplace hostname Lynx
+ source=hostname
+ target='hostname "Lynx"'
++ grep -Poc '(hostname).+' /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
1
+ echo '[initConfig.sh]Request for replacing hostname to hostname "Lynx", source is found 1 times'
+ '[' 1 == 1 ']'
[initConfig.sh]Request for replacing hostname to hostname "Lynx", source is found 1 times
++ grep -Po '(hostname).+' /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
++ sed 's/\\/\\\\/g'
++ sed 's/\//\\\//g'
+ source='hostname ""'
++ echo 'hostname "Lynx"'
++ sed 's/\\/\\\\/g'
++ sed 's/\//\\\//g'
+ target='hostname "Lynx"'
+ sed -i 's/hostname ""/hostname "Lynx"/g' /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
+ '[' -n ████ ']'
+ configReplace sv_password ████
+ source=sv_password
+ target='sv_password "████"'
++ grep -Poc '(sv_password).+' /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
[initConfig.sh]Request for replacing sv_password to sv_password "████", source is found 1 times
1
+ echo '[initConfig.sh]Request for replacing sv_password to sv_password "████", source is found 1 times'
+ '[' 1 == 1 ']'
++ grep -Po '(sv_password).+' /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
++ sed 's/\\/\\\\/g'
++ sed 's/\//\\\//g'
+ source='sv_password ""'
++ echo 'sv_password "████"'
++ sed 's/\\/\\\\/g'
++ sed 's/\//\\\//g'
+ target='sv_password "████"'
+ sed -i 's/sv_password ""/sv_password "████"/g' /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
+ '[' -n ████ ']'
+ configReplace rcon_password ████
+ source=rcon_password
+ target='rcon_password "████"'
++ grep -Poc '(rcon_password).+' /home/steam/serverfiles/garrysmod/cfg/gmodserver.cfg
0
I do not think this is an issue just the lack of knowledge from my part. But when I use volume and add addons with the addons I wish to have on my container when I do a restart / start I get a list of permission denied on all files + folders inside /addons/. is there an easy way to solve this?
Hey jusito,
I would like to run your Docker image on my NAS. I make the following settings:
Set a volume folder to /home/steam/serverfiles
enter my workshop ID and API key, set server name and password and install CSS and HL2
after a few seconds the following problem appears:
mkdir: cannot create directory ‘/home/steam/serverfiles/garrysmod’: Permission denied
and other Permission errors in /home
Can you help me?
Thanks
running it without detached mode gives me
standard_init_linux.go:211: exec user process caused "exec format error"
after that the container dies. I think i set it up correctly
Hi there,
can i just add custom files to the server via copy the files to the volume mount?
In my case there are sound files for the endofround plugin.
thanks Tom
Hello,
thank you for the image.
I think, the steamcmd download is currently broken.
When starting for the first time, I get the following error:
ttt-server | Installing SteamCMD
ttt-server | =================================
ttt-server | fetching GitHub check_steamcmd.sh...OK�[2K
mkdir: created directory '/home/steam/steamcmd'
ttt-server | mkdir: cannot create directory ‘’: No such file or directory
ttt-server | fetching steamcmd_linux.tar.gz ...ERROR
ttt-server | mkdir: cannot create directory ‘’: No such file or directory
ttt-server | fetching ...FAIL
ttt-server | fetching GitHub core_exit.sh...OK�[2K
Maybe the download url has changed?
Thank you for your help.
docker-compose.yml
version: '3'
services:
ttt:
image: jusito/docker-ttt
restart: unless-stopped
ports:
- "27015:27015/udp"
- "27015:27015/tcp"
env_file:
- ttt.env
volumes:
- TTTserver:/home/steam/serverfiles
container_name: ttt-server
volumes:
TTTserver:
ttt.env
SERVER_NAME=name
SERVER_PASSWORD=pw
SERVER_PORT=27015
INSTALL_CSS=true
WORKSHOP_COLLECTION_ID=123
SERVER_DEFAULT_MAP=ttt_waterworld
SERVER_RCON_PASSWORD=pw
Complete Log
Attaching to ttt-server
ttt-server | [entrypoint.sh]starting entrypoint.sh
ttt-server | [entrypoint.sh]installing...
ttt-server | fetching serverlist.csv...OK
ttt-server | Installed Garrys Mod server as gmodserver
ttt-server |
ttt-server | Remember to check server ports
ttt-server | ./gmodserver details
ttt-server |
ttt-server | fetching core_functions.sh...OK
ttt-server | fetching core_legacy.sh...OK
ttt-server | mkdir: cannot create directory ‘’: No such file or directory
ttt-server | fetching core_messages.sh...OK
ttt-server | fetching core_dl.sh...OK
ttt-server | fetching GitHub core_trap.sh...OK�[2K
fetching GitHub _default.cfg...OK�[2K
copying _default.cfg...OK
ttt-server | fetching GitHub common.cfg...OK�[2K
fetching GitHub gmodserver.cfg...OK�[2K
fetching GitHub linuxgsm.sh...OK�[2K
fetching GitHub core_getopt.sh...OK�[2K
fetching GitHub command_install.sh...OK�[2K
fetching GitHub check.sh...OK�[2K
fetching GitHub check_tmuxception.sh...OK�[2K
fetching GitHub check_permissions.sh...OK�[2K
fetching GitHub check_glibc.sh...OK�[2K
fetching GitHub info_distro.sh...OK�[2K
fetching GitHub check_system_requirements.sh...OK�[2K
fetching GitHub install_header.sh...OK�[2K
�[3J�[H�[2J
ttt-server | mdMMMMbm
ttt-server | mMMMMMMMMMMm
ttt-server | mMMMMMMMMMMMMm
ttt-server | mMMMMMMMMMMMMMMm
ttt-server | hMMMV^VMMV^VMMMh
ttt-server | MMMMM MM MMMMM
ttt-server | hMMs vv sMMh
ttt-server | hMMM: :MMMh
ttt-server | .hMMMh hMMMh.
ttt-server | -dMMMh __ hMMMd-
ttt-server | :mMMMs || sMMMm:
ttt-server | :MMMM+ || _ +NMMN:
ttt-server | .mMMM+ ======== +MMMm.
ttt-server | yMMMy ############## yMMMy
ttt-server | mMMM: ############## :MMMm
ttt-server | mMM nn nn nn nn MMm
ttt-server | o nNNNNNNNn nNNNNNNNn o
ttt-server | nNNNNNNNNNn nNNNNNNNNNn
ttt-server | nNNNNNNNNNNN NNNNNNNNNNNn
ttt-server | +NNNNNNNNN: :NNNNNNNNN+
ttt-server | nNNNNNNN /\ NNNNNNNn
ttt-server | nnnnn db nnnnn
ttt-server |
ttt-server | 888 d8b .d8888b. .d8888b. 888b d888
ttt-server | 888 Y8P d88P Y88b d88P Y88b 8888b d8888
ttt-server | 888 888 888 Y88b. 88888b.d88888
ttt-server | 888 888 88888b. 888 888 888 888 888 Y888b. 888Y88888P888
ttt-server | 888 888 888 88b 888 888 Y8bd8P 888 88888 Y88b. 888 Y888P 888
ttt-server | 888 888 888 888 888 888 X88K 888 888 888 888 Y8P 888
ttt-server | 888 888 888 888 Y88b 88Y .d8pq8b. Y88b d88P Y88b d88P 888 * 888
ttt-server | LinuxGSM 888 888 888 Y8888Y 888 888 Y2012P88 Y8888P 888 888
ttt-server |
ttt-server | =================================
ttt-server | LinuxGSM_
ttt-server | by Daniel Gibbs
ttt-server | Game:Garry's Mod
ttt-server | Website: https://linuxgsm.com
ttt-server | Contributors: https://linuxgsm.com/contrib
ttt-server | Donate: https://linuxgsm.com/donate
ttt-server | =================================
ttt-server | fetching GitHub install_server_dir.sh...OK�[2K
ttt-server | Server Directory
ttt-server | =================================
ttt-server | Warning! A server is already installed here.
ttt-server | /home/steam
ttt-server |
ttt-server | fetching GitHub install_logs.sh...OK�[2K
ttt-server | Creating log directories
ttt-server | =================================
ttt-server | installing log dir: /home/steam/log...OK
ttt-server | installing LinuxGSM log dir: /home/steam/log/script...OK
ttt-server | creating LinuxGSM log: /home/steam/log/script/gmodserver-script.log...OK
ttt-server | installing console log dir: /home/steam/log/console...OK
ttt-server | creating console log: /home/steam/log/console/gmodserver-console.log...OK
ttt-server | creating symlink to game log dir: /home/steam/log/server -> /home/steam/serverfiles/garrysmod/logs...OK
ttt-server | fetching GitHub check_deps.sh...OK�[2K
ttt-server | Checking Dependencies
ttt-server | =================================
ttt-server | tmux
ttt-server | wget
ttt-server | ca-certificates
ttt-server | file
ttt-server | bsdmainutils
ttt-server | util-linux
ttt-server | python3
ttt-server | tar
ttt-server | bzip2
ttt-server | gzip
ttt-server | unzip
ttt-server | binutils
ttt-server | bc
ttt-server | jq
ttt-server | lib32gcc1
ttt-server | libstdc++6:i386
ttt-server | lib32tinfo5
ttt-server | Information! Required dependencies already installed
ttt-server | fetching GitHub install_steamcmd.sh...OK�[2K
ttt-server | Installing SteamCMD
ttt-server | =================================
ttt-server | fetching GitHub check_steamcmd.sh...OK�[2K
mkdir: created directory '/home/steam/steamcmd'
ttt-server | mkdir: cannot create directory ‘’: No such file or directory
ttt-server | fetching steamcmd_linux.tar.gz ...ERROR
ttt-server | mkdir: cannot create directory ‘’: No such file or directory
ttt-server | fetching ...FAIL
ttt-server | fetching GitHub core_exit.sh...OK�[2K
[entrypoint.sh]update / installation done!
ttt-server | [prepareServer.sh]check configurations
ttt-server | [initConfig.sh]Request for replacing hostname to hostname "name", source is found 1 times
ttt-server | [initConfig.sh]Request for replacing sv_password to sv_password "pw", source is found 1 times
After setting up everything according to the readme, the container stops giving log output with the last message being
[ OK ] Starting gmodserver: myservername
After this the server is unreachable and I can see that the used port (27015) is not being used by any process.
This is the manifest I am using: https://github.com/alexstaeding/homelab/blob/d0412c55d9212f60ce7aac4e7a6c15030110561e/kubernetes/ttt/deploy.yaml
The container seems to work according to logs but terminates before starting the server. These are the last log messages before the container restarts:
LinuxGSM Stats
=================================
Assist LinuxGSM development by sending anonymous stats to developers.
More info: https://docs.linuxgsm.com/configuration/linuxgsm-stats
The following info will be sent:
* game server
* distro
* game server resource usage
* server hardware info
Information! auto-install leaves stats off by default. Stats can be enabled in common.cfg
fetching GitHub install_complete.sh...OK
=================================
Install Complete!
To start server type:
./gmodserver start
fetching GitHub core_exit.sh...OK
[entrypoint.sh]update / installation done!
[prepareServer.sh]check configurations
[initConfig.sh]Request for replacing hostname to "My Server", source is found 1 times
[initConfig.sh]Request for replacing sv_password to "...", source is found 1 times
I'm not sure if I just don't know what I'm doing, but I can't get ulx to work. I manually installed it and it still doesn't show up in the gmodserver console. I tried connecting through rcon and it still doesn't work. I can set cvars but I can't run ulx. Any help would be appreciated.
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.