server_linux.sh can't find executable file. - idk - 05-21-2024
Hello. I'm trying to create a Dockerfile to run a xonotic in a container. So far, I've written this:
Code: FROM alpine:latest
EXPOSE 26000
RUN mkdir ~/.xonotic
RUN mkdir ~/xonotic
COPY "./server.cfg" "~/.xonotic/data"
CMD [ "/home/root/xonotic/server_linux.sh" ]
And I run it with this command:
Code: docker run -p 26000:26000 -v C:/Users/my_user/Downloads/Xonotic:/home/root/xonotic xonotic
But I get this error:
Code: /home/root/xonotic/server_linux.sh: exec: line 24: ./xonotic-linux64-dedicated: not found
The file is the folder. I verify it by changing the CMD instruction to CMD [ "ls", "-l", "/home/root/xonotic" ]
Then running the container (with the same command) results in:
Code: total 97856
-rwxrwxrwx 1 root root 2383 May 20 23:52 COPYING
drwxrwxrwx 1 root root 4096 May 20 23:52 Docs
-rwxrwxrwx 1 root root 18092 May 20 23:52 GPL-2
-rwxrwxrwx 1 root root 35147 May 20 23:52 GPL-3
-rwxrwxrwx 1 root root 3245 May 20 23:52 Makefile
drwxrwxrwx 1 root root 4096 May 20 23:52 Xonotic.app
drwxrwxrwx 1 root root 4096 May 20 23:52 bin32
drwxrwxrwx 1 root root 4096 May 20 23:52 bin64
drwxrwxrwx 1 root root 4096 May 20 23:53 data
-rwxrwxrwx 1 root root 280 May 20 23:52 key_0.d0pk
drwxrwxrwx 1 root root 4096 May 20 23:53 misc
drwxrwxrwx 1 root root 4096 May 20 23:53 server
-rwxrwxrwx 1 root root 709 May 21 18:37 server_linux.sh
drwxrwxrwx 1 root root 4096 May 20 23:53 source
-rwxrwxrwx 1 root root 5856452 May 20 23:52 xonotic-dedicated.exe
-rwxrwxrwx 1 root root 20 May 20 23:52 xonotic-linux-dedicated.sh
-rwxrwxrwx 1 root root 20 May 20 23:52 xonotic-linux-glx.sh
-rwxrwxrwx 1 root root 2727 May 20 23:52 xonotic-linux-sdl.sh
-rwxrwxrwx 1 root root 13239000 May 20 23:52 xonotic-linux64-dedicated
-rwxrwxrwx 1 root root 13785992 May 20 23:52 xonotic-linux64-glx
-rwxrwxrwx 1 root root 13759896 May 20 23:52 xonotic-linux64-sdl
-rwxrwxrwx 1 root root 3424008 May 20 23:52 xonotic-osx-dedicated
-rwxrwxrwx 1 root root 6726666 May 20 23:52 xonotic-wgl.exe
-rwxrwxrwx 1 root root 5523226 May 20 23:52 xonotic-x86-dedicated.exe
-rwxrwxrwx 1 root root 6300448 May 20 23:52 xonotic-x86-wgl.exe
-rwxrwxrwx 1 root root 13724006 May 20 23:52 xonotic-x86.exe
-rwxrwxrwx 1 root root 17769571 May 20 23:52 xonotic.exe
Any idea why could this be happening?
RE: server_linux.sh can't find executable file. - idk - 05-22-2024
I fixed it. Apparently it was a problem with alpine because it works with ubuntu:latest
RE: server_linux.sh can't find executable file. - idk - 05-22-2024
I have another problem. When I run the server it prints
Code: You have started a dedicated server but have not created
any server.cfg in your config directory.
But the server.cfg is in /home/root/.xonotic/data/, I checked with an ls
RE: server_linux.sh can't find executable file. - Freddy - 05-22-2024
The home folder for root is normally "/root/". But even in docker, it's a good idea to run software with an unprivileged user.
RE: server_linux.sh can't find executable file. - idk - 05-22-2024
That fixed it, thanks. I have this error now:
Code: execing autoexec/empty.cfg
execing autoexec.cfg
Quake Error: session lock /home/xonotic/.xonotic/lock could not be acquired. Please run with -sessionid and an unique session name.
This is my dockerfile
Code: FROM debian:bookworm
EXPOSE 26000
RUN useradd xonotic
USER xonotic
COPY "./server.cfg" "/home/xonotic/.xonotic/data/"
CMD [ "/home/xonotic/xonotic/server_linux.sh" ]
I tried adding -sessionid idk to the server_linux.sh call but didn't work
Thanks in advanced
|