After a successful build & compile (0.8.5): This script is not properly set up yet. - John - 01-21-2024
Hello,
I am new to this, but I have been running a dedicated Xonotic server since 0.8.2 on a ClearOS 7 box (CentOS) and it's time for an update.
This is the output for the only way I was able to confirm that my 1st build, in my 1st container on my 1st project on my new NethServer 7 box (CentOS) for Xonotic 0.8.6 could be possible.
Following the RPM based system instructions and doing some research, I was able to achieve partial success by placing the following at the end of my Dockerfile:
Code: # Run a dedicated server
RUN ./all run dedicated
Code: Game is Xonotic using base gamedir data
gamename for server filtering: Xonotic
Xonotic Linux dedicated, buildstring: v20140513-1377-g26923fa0 Jan 21 2024 release
Current nice level is below the soft limit - cannot use niceness
Loaded library "libd0_blind_id.so.0"
Loaded library "libd0_rijndael.so.0"
Loaded library "libcurl.so.4"
Skeletal animation uses SSE code path
execing quake.rc
execing default.cfg
execing xonotic-common.cfg
execing xonotic-client.cfg
Warning: Could not expand $vid_width
Warning: Could not expand $vid_height
Warning: Could not expand $vid_pixelheight
Warning: Could not expand $vid_desktopfullscreen
execing sRGB-disable.cfg
execing binds-xonotic.cfg
execing effects-normal.cfg
execing crosshairs.cfg
execing gamemodes-client.cfg
execing notifications.cfg
execing _hud_common.cfg
execing _hud_descriptions.cfg
execing hud_luma.cfg
execing xonotic-server.cfg
execing testing.cfg
execing balance-xonotic.cfg
execing bal-wep-xonotic.cfg
execing physicsX.cfg
execing turrets.cfg
execing vehicles.cfg
execing gamemodes-server.cfg
execing ctfscoring-samual.cfg
execing mutators.cfg
execing randomitems-xonotic.cfg
execing monsters.cfg
execing minigames.cfg
execing physics.cfg
execing cdtracks.cfg
execing commands.cfg
Warning: Could not expand $qport in alias _if_dedicated
execing help.cfg
couldn't exec config.cfg
"maxplayers" set to "16"
execing data/campaign.cfg
execing config_update.cfg
execing font-xolonium.cfg
Warning: Could not expand $con_textsize
Warning: Could not expand $con_notifysize
Warning: Could not expand $con_chatsize
Warning: Could not expand $scr_loadingscreen_barheight
Warning: Could not expand $scr_infobar_height
This command only works on clients: cl_cmd hud scoreboard_columns_set
execing autoexec/empty.cfg
execing autoexec.cfg
Loaded public key key_0.d0pk (fingerprint: Xon//KssdlzGkFKdnnN4sgg8H+koTbBn5JTi37BAW1Q=)
Loaded public key key_1.d0pk (fingerprint: XHub/MCjSOklCBU4ADlHX3+EcTjC0xhJ6odguyTvGp0=)
Generated private ID key_0.d0pk (public key fingerprint: lBiYIo+tuwB1g0jY0qBkZj3qjwEu4TCt6lgpURuEh8U=)
Saved unsigned key to key_0.d0si
Signature generation in progress...
execing post-config.cfg
SpawnServer: _init/_init
Server listening on address 0.0.0.0:26000
Server listening on address [0:0:0:0:0:0:0:0]:26000
server: program loaded (crc 57413, size 6534K)
server VM warning: 12 of 16383 bytes available, will truncate 21 byte string "INFO_ITEM_WEAPON_DROP"
s221567: ce_startsolid:721: IFNOT GLOBAL48507, statement 221579
s221568: ce_startsolid:721: STORE_F GLOBAL48526, GLOBAL48508
s221569: ce_startsolid:721: STORE_ENT GLOBAL48507, GLOBAL48508
s221570: ce_startsolid:721: FIELD_ENT GLOBAL48507, .enemy (=.enemy), GLOBAL48527
s221571: ce_startsolid:721: FIELD_S GLOBAL48508, .registered_id (=.registered_id), GLOBAL10
s221572: ce_startsolid:721: STORE_S GLOBAL48525, GLOBAL4
s221573: ce_startsolid:721: STORE_S GLOBAL27168, GLOBAL7
s221574: ce_startsolid:721: CALL3 strcat (=strcat())
ce_startsolid:721 : _static_Registry_check_Notifications_1 : statement 11
./ecs/systems/sv_physics.qc:721 : __static_init_1 : statement 274
:632 : __spawnfunc___init_dedicated_server : statement 35
:216 : StartFrame : statement 10
Server spawned.
execing server.cfg
You have started a dedicated server but have not created
any server.cfg in your config directory.
If you are seeing this when just trying to play Xonotic
(not host a server), try the other executables.
For information on how to set up a dedicated server,
look at the files in the server/ subdirectory of your
Xonotic install.
Quitting shortly.
Maplist contains no usable maps! Resetting it to default map list.
Switching to map bromine
menu: unknown program name
SpawnServer: bromine
Server listening on address 0.0.0.0:26000
Server listening on address [0:0:0:0:0:0:0:0]:26000
server: program loaded (crc 57413, size 6534K)
server VM warning: 12 of 16383 bytes available, will truncate 21 byte string "INFO_ITEM_WEAPON_DROP"
s221567: ce_startsolid:721: IFNOT GLOBAL48507, statement 221579
s221568: ce_startsolid:721: STORE_F GLOBAL48526, GLOBAL48508
s221569: ce_startsolid:721: STORE_ENT GLOBAL48507, GLOBAL48508
s221570: ce_startsolid:721: FIELD_ENT GLOBAL48507, .enemy (=.enemy), GLOBAL48527
s221571: ce_startsolid:721: FIELD_S GLOBAL48508, .registered_id (=.registered_id), GLOBAL10
s221572: ce_startsolid:721: STORE_S GLOBAL48525, GLOBAL4
s221573: ce_startsolid:721: STORE_S GLOBAL27168, GLOBAL7
s221574: ce_startsolid:721: CALL3 strcat (=strcat())
ce_startsolid:721 : _static_Registry_check_Notifications_1 : statement 11
./ecs/systems/sv_physics.qc:721 : __static_init_1 : statement 274
:834 : __spawnfunc_worldspawn : statement 146
:216 : StartFrame : statement 10
Server spawned.
Dedicated server requires server.cfg in your config directory, quitting.
Player stats writing failed: -2
Invalid response from keygen server:
The problem remains that I think that compiling did not go as planned, because the files in the container have mostly longer than 30 characters in the names.
Code: # Update and compile Xonotic
RUN ./all each git clean -n -d
RUN ./all update -l best
RUN ./all compile -r -0
Code: # ls -la
total 193840
drwxr-xr-x 1 root root 4096 Jan 21 18:36 .
drwxr-xr-x 1 root root 108 Jan 21 18:35 ..
-rw-r--r-- 1 root root 8696599 Aug 15 13:45 afterslime-5d4623929a2288fb8e0caa91e64e30275d5fe26f-f6171455ac2ea3a087415aecb6dc8ad72e22fd23.pk3
-rw-r--r-- 1 root root 5141107 Oct 22 2022 atelier-ad25de9fc4f26b4ca26da98effe1ac67708a06c0-0d88a619386c4fff95e6aaa55a4bfeae5d10b507.pk3
-rw-r--r-- 1 root root 3888526 May 31 2023 boil-e947e74d5be804a2047f8affbdb8b5d572da9eae-7cd472629b0fabeb2218405091afe6a774dc9bec.pk3
-rw-r--r-- 1 root root 5751369 May 31 2023 bromine-c1a99787e1b8dcebfc5cca901a31795b1a0711d1-9813e725da66c82024abddf1f1edf30d9f3c15ff.pk3
-rw-r--r-- 1 root root 22322917 Oct 11 2019 catharsis-ffda85a4c0919448c581dde84972a52483eb3184-2d7a20f25748dff9bc77cd1304434927d6a6bc51.pk3
-rw-r--r-- 1 root root 8184407 Oct 12 2019 courtfun-2b86fb7f4223a60d98c3847a9db941513789416b-dff9ba4fb55ae99d92afd0f938a87ad4ed05344e.pk3
-rw-r--r-- 1 root root 8827098 May 31 2023 dance-1283e426d7eb62c1dbaf560ca39b9c152e25c12b-eb92b32e513506c5601e7ca5a79af5d7597f2dc0.pk3
-rw-r--r-- 1 root root 4401990 Jun 7 2023 darkzone-c4b9580a6f52e4acf93f59ed9b0f745a761cce54-ea607bdc6469f1b8bc63926edb92ffa4adcc1417.pk3
-rw-r--r-- 1 root root 11706679 Jun 7 2023 erbium-be4734d0d3d4e5a2036e1b52b99f7899970f940c-16b5cc3de859c8c96bdbcb63007a49fa69ec9447.pk3
-rw-r--r-- 1 root root 4256323 Aug 15 13:54 finalrage-e574cc15b69f1e36ccb10f57be5ed11607c6bd36-45350cd3079c7aa7d15c31b33869a2f916eddf53.pk3
drwxr-xr-x 3 root root 54 Jan 21 18:22 font-dejavu.pk3dir
drwxr-xr-x 3 root root 47 Jan 21 18:22 font-nimbussansl.pk3dir
drwxr-xr-x 3 root root 27 Jan 21 18:22 font-unifont.pk3dir
drwxr-xr-x 3 root root 44 Jan 21 18:22 font-xolonium.pk3dir
-rw-r--r-- 1 root root 4300253 Dec 23 2021 fuse-80fe037f8b566b2a7642686a0d88b78a0da50f94-75bbcb07b27970101c2effabf7087497be6fed60.pk3
-rw-r--r-- 1 root root 9284416 May 31 2023 geoplanetary-f99232f8fc79c6146a8492fea22464b1442d1200-0e523399994a41d6d0d7a8e405e8b231f3dc7f92.pk3
-rw-r--r-- 1 root root 55 Jan 21 18:22 .gitignore
-rw-r--r-- 1 root root 5328587 Jun 7 2023 glowplant-f4213e4bbc5eb5cdc36449bb14d537701d8b5c5f-bb499ae726b4fd7e9d5c9868e72edce24644c1cf.pk3
-rw-r--r-- 1 root root 6502350 May 31 2023 go-80c9e0d6836a3e8819c950fba2b7057dd30f66f8-3c3e926b97509a7a801dc61494c821ab8bc769f3.pk3
-rw-r--r-- 1 root root 963675 May 31 2023 _hudsetup-0497847be79e01a8cd13ddeed1ee3752ab7bf256-3ecd1f9717987ba4f9e9f1864198acbbfd910f8a.pk3
-rw-r--r-- 1 root root 13984740 Jun 1 2023 implosion-5548282f9f55e33beb88ae2f42a4c947cfbde3eb-204c47f925550846774b3a4f59c94485322f8c4f.pk3
-rw-r--r-- 1 root root 1917837 Jun 7 2023 leave_em_behind-ee82e34486308539736c837ecb5a37c6b1dc34ae-b842f9a60c5e9c9277c63a351bb425da05b77da6.pk3
-rw-r--r-- 1 root root 1134687 Jun 7 2023 nexballarena-8bb6c1c1a7345aff08ecc39ddf66407150788d21-4f2c9621b1b794bc003f9300f91ade6843610317.pk3
-rw-r--r-- 1 root root 2777877 Jun 7 2023 opium-a7fb1513790443cc0095299f5f161ca810108bcd-08490569e1a83e4f7c1f93813823face3db616fd.pk3
-rw-r--r-- 1 root root 4281170 Jul 2 2023 runningman-cf6c4b8779c8d21c02409b7e66efdf878c280840-d47579683fad9017f59a77e8e4066d84599ef14c.pk3
-rw-r--r-- 1 root root 9395506 Jun 1 2023 runningmanctf-0254c3e9e6e58d21f943553ddcecd060d5474f2e-ec071498aa0390f217c9248538cbcfaee0cf233a.pk3
-rw-r--r-- 1 root root 5911952 Mar 19 2022 silentsiege-7f41ba1806adebf245ab8b39a5ff2db26ea4e7e6-d85e06f68ddd2958d75f35dc2ab1eff72be1a973.pk3
-rw-r--r-- 1 root root 6769821 Jan 10 2023 solarium-b16edbf122b33768813629ebd7826920d4f59849-c07c39fb6b2e5d2643d8baf1b6662e0932b676f3.pk3
-rw-r--r-- 1 root root 5105257 Jun 25 2022 space-elevator-abae97ebd4f1375d405104bad5b756d39981361f-2bec44fa20b2cc84a7a1057af60317b9ab5923a2.pk3
-rw-r--r-- 1 root root 4289881 Aug 17 10:52 stormkeep-97f4b0c20a12daa5b5d14e052e8b1466d5b1dcec-e8389de88dd25a7f991f3773c0a11c63e9522723.pk3
-rw-r--r-- 1 root root 5784893 Jun 7 2023 techassault-6ca48353b482f55cba7e7aaa6e9d7f89b59055f0-7cbb136bc92851d6e844675c8e375425b5a75fa6.pk3
-rw-r--r-- 1 root root 3221123 Dec 23 16:00 trident-045ddbf07801be2850e74ff0b1e7d2e712fe13ba-f51ac8bec1e79d2dc576d1c73c09fdfdff935ad8.pk3
-rw-r--r-- 1 root root 10256916 Jun 1 2023 vorix-2b7044016f9cec1a1dfa4bf79ec0000f9d0759b0-d61de96ac3140b88f61e6ede6792dece65337cd9.pk3
-rw-r--r-- 1 root root 3056304 Jun 2 2023 warfare-74fff6f67c3f4fb58c0cbb4c43e840c8cf67bb76-bdfdbed6d7a7c9b5054dfd1d9d6510257b05aff9.pk3
drwxr-xr-x 1 root root 187 Jan 21 18:34 xonotic-data.pk3dir
drwxr-xr-x 1 root root 26 Jan 21 18:30 xonotic-maps.pk3dir
drwxr-xr-x 1 root root 26 Jan 21 18:26 xonotic-music.pk3dir
-rw-r--r-- 1 root root 10961986 Feb 9 2019 xoylent-719ef6eeb4557948d55beba9fa44cd5622366339-afb7cd09bd6751ad75b788a1ddc6176c005d4fe0.pk3
I was able to start the container, but I had the this error when attempting to start the server from inside and outside the container and I was unable to find a similar to the client file structure.
Code: # ./xonotic-linux64-dedicated
-bash: ./xonotic-linux64-dedicated: No such file or directory
Code: # docker run -it xonotic-server:0.8.6
/usr/bin/docker-current: Error response from daemon: oci runtime error: container_linux.go:290: starting container process caused "exec: \"/opt/xonotic/0.8.6/xonotic-linux64-dedicated\": stat /opt/xonotic/0.8.6/xonotic-linux64-dedicated: no such file or directory".
Code: # ls -la
lrwxrwxrwx 1 root root 20 Jan 21 17:07 xonotic-linux-dedicated.sh -> xonotic-linux-sdl.sh
Code: # docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9ca49a346778 xonotic-server:0.8.6 "/opt/xonotic/..." 2 minutes ago Created 26000/udp ecstatic_feynman
Please advice and thanks in advance,
J.
PS.
I added the full output of Dockerfile.
AFAIK I am left with only a few minor warnings resulting in a successful build.
EDIT:
It seems that version 0.8.6 requires a glibc version that is not available for NethServer 7 (CentOS) and this cannot be updated without compromising your system stability.
RE: After a successful build & compile (0.8.5): This script is not properly set up ye - John - 01-27-2024
Hi all,
Because it was not possible for me to run version 0.8.6 on a NethServer 7 box, I tried building 0.8.5 with success ...
(But I still need some help, so keep on reading.)
Code: # docker build --no-cache -t xonotic-server:0.8.5 .
[+] Building 1188.3s (38/38) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.1s
=> => transferring dockerfile: 6.53kB 0.0s
=> [internal] load metadata for docker.io/library/centos:8 1.3s
=> [internal] load .dockerignore 0.1s
=> => transferring context: 2B 0.0s
=> CACHED [ 1/34] FROM docker.io/library/centos:8@sha256:a27fd8080b51714 0.0s
=> [internal] load build context 0.1s
=> => transferring context: 32B 0.0s
=> [ 2/34] RUN cd /etc/yum.repos.d/ && sed -i 's/mirrorlist/#mirrorl 0.6s
=> [ 3/34] RUN yum install -y dnf unzip zip wget 15.2s
=> [ 4/34] RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel 3.6s
=> [ 5/34] RUN dnf install -y zlib-devel openssl-devel libX11-devel lib 49.2s
=> [ 6/34] WORKDIR /tmp 0.2s
=> [ 7/34] RUN curl -LO https://curl.se/download/curl-7.74.0.tar.gz 63.3s
=> [ 8/34] WORKDIR /tmp 0.2s
=> [ 9/34] RUN curl -L https://downloads.xiph.org/releases/vorbis/libvo 19.8s
=> [10/34] RUN rm -rf /tmp/libvorbis-1.3.7 0.7s
=> [11/34] RUN dnf install -y rsync autoconf automake gcc-c++ gmp-devel 13.3s
=> [12/34] RUN dnf update -y 56.4s
=> [13/34] RUN dnf install -y alsa-lib desktop-file-utils gtk-update-ic 10.4s
=> [14/34] RUN dnf install -y libmodplug-devel dbus dbus-devel 3.5s
=> [15/34] RUN curl -L https://github.com/libsdl-org/SDL/archive/relea 155.1s
=> [16/34] WORKDIR /opt/xonotic/0.8.5/ 0.2s
=> [17/34] RUN dnf install -y curl-devel expat-devel gettext-devel opens 6.8s
=> [18/34] RUN curl -LO https://github.com/git/git/archive/v2.35.1.tar 134.6s
=> [19/34] RUN git config --global pull.rebase false 0.5s
=> [20/34] RUN git clone https://gitlab.com/xonotic/xonotic.git . 26.1s
=> [21/34] RUN git checkout master 0.6s
=> [22/34] RUN mkdir -p /opt/xonotic/0.8.5/gmqcc 0.5s
=> [23/34] RUN ./all each /usr/local/bin/git clean -n -d && ./all 527.4s
=> [24/34] RUN cp server/server_linux.sh . 1.5s
=> [25/34] RUN mkdir -p $HOME/.xonotic/data 1.3s
=> [26/34] RUN mkdir -p ~/.xonotic/data 1.2s
=> [27/34] RUN mkdir -p /root/.xonotic/data 1.5s
=> [28/34] RUN mkdir -p data/.xonotic 1.2s
=> [29/34] COPY server.cfg /.xonotic/data/server.cfg 0.9s
=> [30/34] COPY server.cfg ~/.xonotic/data/server.cfg 0.7s
=> [31/34] COPY server.cfg /root/.xonotic/data/server.cfg 0.7s
=> [32/34] COPY server.cfg data/.xonotic/server.cfg 0.9s
=> [33/34] COPY server.cfg data/server.cfg 0.7s
=> exporting to image 85.8s
=> => exporting layers 85.7s
=> => writing image sha256:3508fc5e83385ccab1bdde17bdf9bbd7d929023b1b4c6 0.0s
=> => naming to docker.io/library/xonotic-server:0.8.5 0.1s
i was able to build and compile it with all the required dependencies. I had to use 'make' for four dependencies to compile them from source (libcurl 7.74.0, libvorbis 1.3.7, SDL2 2.28.5 & git 2.35.1), because they were not available in the repository.
List of all the dependencies installed in the container:
Code: 1 perl-CPAN-Meta-2.150010-396.el8.noarch
2 perl-Pod-Simple-3.35-395.el8.noarch
3 ghc-srpm-macros-1.4.2-7.el8.noarch
4 perl-Text-ParseWords-3.30-395.el8.noarch
5 redhat-rpm-config-125-1.el8.noarch
6 perl-Getopt-Long-2.50-4.el8.noarch
7 gettext-devel-0.19.8.1-17.el8.x86_64
8 perl-Carp-1.42-396.el8.noarch
9 perl-parent-0.237-1.el8.noarch
10 perl-File-Path-2.15-2.el8.noarch
11 perl-threads-2.21-2.el8.x86_64
12 bzip2-libs-1.0.6-26.el8.x86_64
13 perl-Thread-Queue-3.13-1.el8.noarch
14 xorg-x11-proto-devel-2020.1-3.el8.noarch
15 libsepol-devel-2.9-3.el8.x86_64
16 krb5-devel-1.18.2-14.el8.x86_64
17 gmp-6.1.2-10.el8.x86_64
18 libxcrypt-devel-4.1.1-6.el8.x86_64
19 cmake-data-3.20.2-4.el8.noarch
20 libX11-devel-1.6.8-5.el8.x86_64
21 libogg-devel-1.3.2-10.el8.x86_64
22 p11-kit-0.23.22-1.el8.x86_64
23 libXext-1.3.4-1.el8.x86_64
24 libunistring-0.9.9-3.el8.x86_64
25 gmp-c++-6.1.2-10.el8.x86_64
26 git-core-2.27.0-1.el8.x86_64
27 p11-kit-trust-0.23.22-1.el8.x86_64
28 perl-Git-2.27.0-1.el8.noarch
29 gmp-devel-6.1.2-10.el8.x86_64
30 libusbx-1.0.23-4.el8.x86_64
31 curl-7.61.1-22.el8.x86_64
32 coreutils-single-8.30-12.el8.x86_64
33 sqlite-libs-3.26.0-15.el8.x86_64
34 xz-5.2.4-3.el8.x86_64
35 libcap-ng-0.7.11-1.el8.x86_64
36 libsemanage-2.9-6.el8.x86_64
37 lz4-libs-1.8.3-3.el8_4.x86_64
38 bash-4.4.20-2.el8.x86_64
39 pam-1.3.1-15.el8.x86_64
40 libmetalink-0.1.3-7.el8.x86_64
41 chkconfig-1.19.1-1.el8.x86_64
42 ipcalc-0.2.4-4.el8.x86_64
43 libfdisk-2.32.1-28.el8.x86_64
44 gawk-4.2.1-2.el8.x86_64
45 platform-python-3.6.8-41.el8.x86_64
46 libnsl2-1.2.0-2.20180605git4a062cf.el8.x86_64
47 libcomps-0.1.16-2.el8.x86_64
48 libpwquality-1.4.4-3.el8.x86_64
49 libbpf-0.4.0-1.el8.x86_64
50 libsmartcols-2.32.1-28.el8.x86_64
51 dhcp-common-4.3.6-45.el8.noarch
52 libyaml-0.1.7-5.el8.x86_64
53 centos-linux-release-8.5-1.2111.el8.noarch
54 pigz-2.4-4.el8.x86_64
55 kbd-2.0.4-10.el8.x86_64
56 grub2-tools-minimal-2.02-106.el8.x86_64
57 elfutils-debuginfod-client-0.185-1.el8.x86_64
58 device-mapper-1.02.177-10.el8.x86_64
59 iputils-20180629-7.el8.x86_64
60 libcroco-0.6.12-4.el8_2.1.x86_64
61 glib2-2.56.4-156.el8.x86_64
62 systemd-239-51.el8_5.2.x86_64
63 dhcp-client-4.3.6-45.el8.x86_64
64 python3-rpm-4.14.3-19.el8.x86_64
65 rootfiles-8.1-22.el8.noarch
66 libibverbs-35.0-1.el8.x86_64
67 librepo-1.14.0-2.el8.x86_64
68 openldap-2.4.46-18.el8.x86_64
69 unbound-libs-1.7.3-17.el8.x86_64
70 libglvnd-1.3.2-1.el8.x86_64
71 python3-dnf-4.7.0-4.el8.noarch
72 libXfixes-devel-5.0.3-7.el8.x86_64
73 libpsl-0.20.2-6.el8.x86_64
74 libxshmfence-1.3-2.el8.x86_64
75 python3-six-1.11.0-8.el8.noarch
76 mesa-libgbm-21.1.5-1.el8.x86_64
77 python3-dnf-plugins-core-4.0.21-3.el8.noarch
78 libglvnd-opengl-1.3.2-1.el8.x86_64
79 emacs-filesystem-26.1-7.el8.noarch
80 valgrind-devel-3.17.0-5.el8.x86_64
81 glibc-2.28-164.el8.x86_64
82 mesa-libEGL-21.1.5-1.el8.x86_64
83 libxcrypt-4.1.1-6.el8.x86_64
84 libXinerama-1.1.4-1.el8.x86_64
85 openssl-1.1.1k-5.el8_5.x86_64
86 mesa-libGL-devel-21.1.5-1.el8.x86_64
87 libcurl-minimal-7.61.1-22.el8.x86_64
88 mesa-libGLU-9.0.0-15.el8.x86_64
89 alsa-lib-1.2.5-4.el8.x86_64
90 desktop-file-utils-0.23-8.el8.x86_64
91 libuv-1.41.1-1.el8_4.x86_64
92 dbus-devel-1.12.8-14.el8.x86_64
93 pkgconf-1.4.2-1.el8.x86_64
94 python-srpm-macros-3-41.el8.noarch
95 pcre2-utf32-10.32-2.el8.x86_64
96 python-rpm-macros-3-41.el8.noarch
97 ncurses-6.1-9.20180224.el8.x86_64
98 perl-Math-Complex-1.59-420.el8.noarch
99 perl-libnet-3.11-3.el8.noarch
100 rust-srpm-macros-5-2.el8.noarch
101 perl-Mozilla-CA-20160104-7.module_el8.3.0+416+dee7bcef.noarch
102 perl-ExtUtils-Command-7.34-1.el8.noarch
103 perl-Term-ANSIColor-4.06-396.el8.noarch
104 perl-CPAN-Meta-YAML-0.018-397.el8.noarch
105 perl-File-Temp-0.230.600-1.el8.noarch
106 python3-setuptools-wheel-39.2.0-6.el8.noarch
107 openblas-srpm-macros-2-2.el8.noarch
108 perl-HTTP-Tiny-0.074-1.el8.noarch
109 go-srpm-macros-2-17.el8.noarch
110 perl-Pod-Perldoc-3.28-396.el8.noarch
111 libreport-filesystem-2.9.5-15.el8.x86_64
112 efi-srpm-macros-3-3.el8.noarch
113 perl-Pod-Usage-1.69-395.el8.noarch
114 annobin-9.72-1.el8_5.2.x86_64
115 perl-Storable-3.11-3.el8.x86_64
116 perl-Errno-1.28-420.el8.x86_64
117 perl-Encode-2.97-3.el8.x86_64
118 setup-2.12.2-6.el8.noarch
119 perl-Exporter-5.72-396.el8.noarch
120 basesystem-11-5.el8.noarch
121 perl-Scalar-List-Utils-1.49-2.el8.x86_64
122 libselinux-2.9-5.el8.x86_64
123 perl-macros-5.26.3-420.el8.x86_64
124 perl-Unicode-Normalize-1.25-396.el8.x86_64
125 perl-IO-1.38-420.el8.x86_64
126 perl-constant-1.33-396.el8.noarch
127 xz-libs-5.2.4-3.el8.x86_64
128 perl-threads-shared-1.58-2.el8.x86_64
129 autoconf-2.69-29.el8.noarch
130 info-6.5-6.el8.x86_64
131 automake-1.16.1-7.el8.noarch
132 libzstd-1.4.4-1.el8.x86_64
133 pkgconf-pkg-config-1.4.2-1.el8.x86_64
134 libXau-devel-1.0.9-3.el8.x86_64
135 libcom_err-devel-1.45.6-2.el8.x86_64
136 libverto-devel-0.3.0-5.el8.x86_64
137 popt-1.18-1.el8.x86_64
138 libselinux-devel-2.9-5.el8.x86_64
139 readline-7.0-10.el8.x86_64
140 zlib-devel-1.2.11-17.el8.x86_64
141 glibc-headers-2.28-164.el8.x86_64
142 libacl-2.2.53-1.el8.x86_64
143 glibc-devel-2.28-164.el8.x86_64
144 vim-filesystem-8.0.1763-16.el8.noarch
145 cmake-3.20.2-4.el8.x86_64
146 audit-libs-3.0-0.17.20191104git1c2f876.el8.x86_64
147 libX11-1.6.8-5.el8.x86_64
148 libtool-2.4.6-25.el8.x86_64
149 alsa-lib-devel-1.2.5-4.el8.x86_64
150 libffi-3.1-22.el8.x86_64
151 libcurl-devel-7.61.1-22.el8.x86_64
152 gzip-1.9-12.el8.x86_64
153 libstdc++-8.5.0-4.el8_5.x86_64
154 cracklib-dicts-2.9.6-15.el8.x86_64
155 libXext-devel-1.3.4-1.el8.x86_64
156 libidn2-2.2.0-1.el8.x86_64
157 libstdc++-devel-8.5.0-4.el8_5.x86_64
158 gdbm-libs-1.18-1.el8.x86_64
159 openssh-8.0p1-10.el8.x86_64
160 libmnl-1.0.4-6.el8.x86_64
161 openssh-clients-8.0p1-10.el8.x86_64
162 libtasn1-4.13-3.el8.x86_64
163 git-core-doc-2.27.0-1.el8.noarch
164 lzo-2.08-14.el8.x86_64
165 perl-Error-0.17025-2.el8.noarch
166 grep-3.1-6.el8.x86_64
167 git-2.27.0-1.el8.x86_64
168 libjpeg-turbo-devel-1.5.3-12.el8.x86_64
169 gcc-c++-8.5.0-4.el8_5.x86_64
170 procps-ng-3.3.15-6.el8.x86_64
171 binutils-2.30-108.el8_5.1.x86_64
172 rsync-3.1.3-12.el8.x86_64
173 libcap-2.26-5.el8.x86_64
174 elfutils-libelf-0.185-1.el8.x86_64
175 libarchive-3.3.3-1.el8.x86_64
176 libxml2-2.9.7-9.el8_4.2.x86_64
177 ima-evm-utils-1.3.2-12.el8.x86_64
178 shadow-utils-4.6-14.el8.x86_64
179 squashfs-tools-4.3-20.el8.x86_64
180 libuuid-2.32.1-28.el8.x86_64
181 gdbm-1.18-1.el8.x86_64
182 kmod-libs-25-18.el8.x86_64
183 python3-pip-wheel-9.0.3-20.el8.noarch
184 libutempter-1.1.6-14.el8.x86_64
185 libtirpc-1.1.4-5.el8.x86_64
186 acl-2.2.53-1.el8.x86_64
187 filesystem-3.8-6.el8.x86_64
188 libblkid-2.32.1-28.el8.x86_64
189 systemd-libs-239-51.el8_5.2.x86_64
190 kmod-25-18.el8.x86_64
191 findutils-4.6.0-20.el8.x86_64
192 grub2-common-2.02-106.el8.noarch
193 cpio-2.12-10.el8.x86_64
194 dbus-tools-1.12.8-14.el8.x86_64
195 libnghttp2-1.33.0-3.el8_2.1.x86_64
196 rdma-core-35.0-1.el8.x86_64
197 libsigsegv-2.11-5.el8.x86_64
198 diffutils-3.6-6.el8.x86_64
199 libverto-0.3.0-5.el8.x86_64
200 python3-libs-3.6.8-41.el8.x86_64
201 platform-python-pip-9.0.3-20.el8.noarch
202 platform-python-setuptools-39.2.0-6.el8.noarch
203 file-5.33-20.el8.x86_64
204 libdb-utils-5.3.28-42.el8_4.x86_64
205 rpm-4.14.3-19.el8.x86_64
206 iproute-5.12.0-4.el8.x86_64
207 pcre-8.42-6.el8.x86_64
208 util-linux-2.32.1-28.el8.x86_64
209 ethtool-5.8-7.el8.x86_64
210 dbus-common-1.12.8-14.el8.noarch
211 centos-gpg-keys-8-3.el8.noarch
212 gnupg2-2.2.20-2.el8.x86_64
213 centos-linux-repos-8-3.el8.noarch
214 trousers-lib-0.3.15-1.el8.x86_64
215 memstrack-0.1.11-1.el8.x86_64
216 kbd-legacy-2.0.4-10.el8.noarch
217 pciutils-3.7.0-1.el8.x86_64
218 hardlink-1.3-6.el8.x86_64
219 libxkbcommon-0.9.1-1.el8.x86_64
220 grubby-8.40-42.el8.x86_64
221 crypto-policies-20210617-1.gitc776d3e.el8.noarch
222 libkcapi-hmaccalc-1.2.0-2.el8.x86_64
223 tar-1.30-5.el8.x86_64
224 hostname-3.20-6.el8.x86_64
225 langpacks-en-1.0-12.el8.noarch
226 gpg-pubkey-8483c65d-5ccc5b19
227 libsolv-0.7.19-1.el8.x86_64
228 libdnf-0.63.0-3.el8.x86_64
229 libevent-2.1.8-5.el8.x86_64
230 python3-unbound-1.7.3-17.el8.x86_64
231 dnf-data-4.7.0-4.el8.noarch
232 mesa-libglapi-21.1.5-1.el8.x86_64
233 dnf-4.7.0-4.el8.noarch
234 libXfixes-5.0.3-7.el8.x86_64
235 publicsuffix-list-dafsa-20180723-1.el8.noarch
236 libXrender-devel-0.9.10-7.el8.x86_64
237 wget-1.19.5-10.el8.x86_64
238 libdrm-2.4.106-2.el8.x86_64
239 yum-4.7.0-4.el8.noarch
240 libglvnd-glx-1.3.2-1.el8.x86_64
241 python3-dateutil-2.6.1-6.el8.noarch
242 libwayland-server-1.19.0-1.el8.x86_64
243 python3-dbus-1.2.4-15.el8.x86_64
244 libpciaccess-devel-0.14-1.el8.x86_64
245 dnf-plugins-core-4.0.21-3.el8.noarch
246 libXrandr-1.5.2-1.el8.x86_64
247 libgcc-8.5.0-4.el8_5.x86_64
248 libpng-1.6.34-5.el8.x86_64
249 cmake-rpm-macros-3.20.2-4.el8.noarch
250 valgrind-3.17.0-5.el8.x86_64
251 glibc-common-2.28-164.el8.x86_64
252 libdrm-devel-2.4.106-2.el8.x86_64
253 glibc-langpack-en-2.28-164.el8.x86_64
254 libglvnd-egl-1.3.2-1.el8.x86_64
255 keyutils-libs-1.5.10-9.el8.x86_64
256 libglvnd-gles-1.3.2-1.el8.x86_64
257 libXau-1.0.9-3.el8.x86_64
258 libglvnd-devel-1.3.2-1.el8.x86_64
259 libmpc-1.1.0-9.1.el8.x86_64
260 libXi-1.7.10-1.el8.x86_64
261 openssl-pkcs11-0.4.10-2.el8.x86_64
262 libXinerama-devel-1.1.4-1.el8.x86_64
263 krb5-libs-1.18.2-14.el8.x86_64
264 gtk-update-icon-cache-3.22.30-8.el8.x86_64
265 libkadm5-1.18.2-14.el8.x86_64
266 libXcursor-devel-1.1.15-3.el8.x86_64
267 keyutils-libs-devel-1.5.10-9.el8.x86_64
268 libvorbis-1.3.6-2.el8.x86_64
269 isl-0.16.1-6.el8.x86_64
270 hicolor-icon-theme-0.17-2.el8.noarch
271 libogg-1.3.2-10.el8.x86_64
272 gpg-pubkey-2f86d6a1-5cf7cefb
273 groff-base-1.22.3-18.el8.x86_64
274 xml-common-0.6.3-50.el8.noarch
275 libpkgconf-1.4.2-1.el8.x86_64
276 libmodplug-devel-0.8.9.0-9.el8.x86_64
277 m4-1.4.18-7.el8.x86_64
278 perl-CPAN-Meta-Requirements-2.140-396.el8.noarch
279 pcre2-utf16-10.32-2.el8.x86_64
280 perl-Time-HiRes-1.9758-2.el8.x86_64
281 libsepol-2.9-3.el8.x86_64
282 perl-Test-Harness-3.42-1.el8.noarch
283 ncurses-libs-6.1-9.20180224.el8.x86_64
284 python3-rpm-macros-3-41.el8.noarch
285 perl-Digest-1.17-395.el8.noarch
286 systemtap-sdt-devel-4.5-3.el8.x86_64
287 perl-Data-Dumper-2.167-399.el8.x86_64
288 perl-Math-BigInt-1.9998.11-7.el8.noarch
289 perl-Net-SSLeay-1.88-1.module_el8.3.0+410+ff426aa3.x86_64
290 gettext-common-devel-0.19.8.1-17.el8.noarch
291 perl-Pod-Escapes-1.07-395.el8.noarch
292 qt5-srpm-macros-5.15.2-1.el8.noarch
293 perl-IO-Socket-IP-0.39-5.el8.noarch
294 perl-ExtUtils-Manifest-1.70-395.el8.noarch
295 perl-IO-Socket-SSL-2.066-4.module_el8.3.0+410+ff426aa3.noarch
296 perl-ExtUtils-Install-2.14-4.el8.noarch
297 perl-ExtUtils-MakeMaker-7.34-1.el8.noarch
298 expat-devel-2.2.5-4.el8.x86_64
299 elfutils-default-yama-scope-0.185-1.el8.noarch
300 kpartx-0.8.4-17.el8.x86_64
301 device-mapper-libs-1.02.177-10.el8.x86_64
302 gettext-libs-0.19.8.1-17.el8.x86_64
303 gnutls-3.6.16-4.el8.x86_64
304 gettext-0.19.8.1-17.el8.x86_64
305 shared-mime-info-1.9-3.el8.x86_64
306 grub2-tools-2.02-106.el8.x86_64
307 systemd-udev-239-51.el8_5.2.x86_64
308 dbus-1.12.8-14.el8.x86_64
309 dracut-network-049-191.git20210920.el8.x86_64
310 rpm-build-libs-4.14.3-19.el8.x86_64
311 kexec-tools-2.0.20-57.el8_5.1.x86_64
312 python3-libcomps-0.1.16-2.el8.x86_64
313 tpm2-tss-2.3.2-4.el8.x86_64
314 tzdata-2021e-1.el8.noarch
315 json-c-0.13.1-2.el8.x86_64
316 hwdata-0.314-8.10.el8.noarch
317 perl-Encode-Locale-1.05-10.module_el8.3.0+416+dee7bcef.noarch
318 perl-Term-Cap-1.17-395.el8.noarch
319 ocaml-srpm-macros-5-4.el8.noarch
320 perl-podlators-4.11-1.el8.noarch
321 dwz-0.12-10.el8.x86_64
322 perl-MIME-Base64-3.15-396.el8.x86_64
323 perl-devel-5.26.3-420.el8.x86_64
324 perl-Socket-2.027-3.el8.x86_64
325 perl-libs-5.26.3-420.el8.x86_64
326 pcre2-10.32-2.el8.x86_64
327 perl-Text-Tabs+Wrap-2013.0523-395.el8.noarch
328 perl-PathTools-3.74-1.el8.x86_64
329 zlib-1.2.11-17.el8.x86_64
330 perl-interpreter-5.26.3-420.el8.x86_64
331 libgpg-error-1.31-1.el8.x86_64
332 pkgconf-m4-1.4.2-1.el8.noarch
333 libxcb-devel-1.13.1-1.el8.x86_64
334 expat-2.2.5-4.el8.x86_64
335 pcre2-devel-10.32-2.el8.x86_64
336 kernel-headers-4.18.0-348.7.1.el8_5.x86_64
337 libattr-2.4.48-3.el8.x86_64
338 gcc-8.5.0-4.el8_5.x86_64
339 sed-4.5-2.el8.x86_64
340 libX11-common-1.6.8-5.el8.noarch
341 openssl-devel-1.1.1k-5.el8_5.x86_64
342 glibc-minimal-langpack-2.28-164.el8.x86_64
343 cracklib-2.9.6-15.el8.x86_64
344 libXxf86vm-1.1.4-9.el8.x86_64
345 libassuan-2.5.1-3.el8.x86_64
346 libedit-3.1-23.20170329cvs.el8.x86_64
347 libnl3-3.5.0-1.el8.x86_64
348 perl-TermReadKey-2.37-7.el8.x86_64
349 libjpeg-turbo-1.5.3-12.el8.x86_64
350 libXxf86vm-devel-1.1.4-9.el8.x86_64
351 perl-Digest-SHA-6.02-1.el8.x86_64
352 libdb-5.3.28-42.el8_4.x86_64
353 lua-libs-5.3.4-12.el8.x86_64
354 file-libs-5.33-20.el8.x86_64
355 libgcrypt-1.8.5-6.el8.x86_64
356 mpfr-3.1.6-1.el8.x86_64
357 libmount-2.32.1-28.el8.x86_64
358 snappy-1.1.8-3.el8.x86_64
359 dbus-libs-1.12.8-14.el8.x86_64
360 libksba-1.3.5-7.el8.x86_64
361 dhcp-libs-4.3.6-45.el8.x86_64
362 libseccomp-2.5.1-1.el8.x86_64
363 ca-certificates-2021.2.50-80.0.el8_4.noarch
364 nettle-3.4.1-7.el8.x86_64
365 rpm-libs-4.14.3-19.el8.x86_64
366 bind-export-libs-9.11.26-6.el8.x86_64
367 gpgme-1.13.1-9.el8.x86_64
368 cyrus-sasl-lib-2.1.27-5.el8.x86_64
369 dbus-daemon-1.12.8-14.el8.x86_64
370 npth-1.5-4.el8.x86_64
371 which-2.21-16.el8.x86_64
372 kbd-misc-2.0.4-10.el8.noarch
373 pciutils-libs-3.7.0-1.el8.x86_64
374 xkeyboard-config-2.28-1.el8.noarch
375 libpcap-1.9.1-5.el8.x86_64
376 crypto-policies-scripts-20210617-1.gitc776d3e.el8.noarch
377 cryptsetup-libs-2.3.3-4.el8.x86_64
378 elfutils-libs-0.185-1.el8.x86_64
379 systemd-pam-239-51.el8_5.2.x86_64
380 libkcapi-1.2.0-2.el8.x86_64
381 os-prober-1.74-9.el8.x86_64
382 dracut-049-191.git20210920.el8.x86_64
383 trousers-0.3.15-1.el8.x86_64
384 dracut-squash-049-191.git20210920.el8.x86_64
385 less-530-1.el8.x86_64
386 python3-gpg-1.13.1-9.el8.x86_64
387 libmodulemd-2.13.0-1.el8.x86_64
388 vim-minimal-8.0.1763-16.el8.x86_64
389 python3-libdnf-0.63.0-3.el8.x86_64
390 iptables-libs-1.8.4-20.el8.x86_64
391 python3-hawkey-0.63.0-3.el8.x86_64
392 libXrender-0.9.10-7.el8.x86_64
393 unzip-6.0-45.el8_4.x86_64
394 libpciaccess-0.14-1.el8.x86_64
395 zip-3.0-23.el8.x86_64
396 mesa-libGL-21.1.5-1.el8.x86_64
397 dbus-glib-0.110-2.el8.x86_64
398 libXcursor-1.1.15-3.el8.x86_64
399 epel-release-8-19.el8.noarch
400 gdk-pixbuf2-2.36.12-5.el8.x86_64
401 cmake-filesystem-3.20.2-4.el8.x86_64
402 libwayland-client-1.19.0-1.el8.x86_64
403 libcom_err-1.45.6-2.el8.x86_64
404 libglvnd-core-devel-1.3.2-1.el8.x86_64
405 libxcb-1.13.1-1.el8.x86_64
406 libXi-devel-1.7.10-1.el8.x86_64
407 openssl-libs-1.1.1k-5.el8_5.x86_64
408 libXrandr-devel-1.5.2-1.el8.x86_64
409 cpp-8.5.0-4.el8_5.x86_64
410 libXpm-3.5.12-8.el8.x86_64
411 libX11-xcb-1.6.8-5.el8.x86_64
412 libmodplug-0.8.9.0-9.el8.x86_64
413 libgomp-8.5.0-4.el8_5.x86_64
414 perl-version-0.99.24-1.el8.x86_64
415 make-4.2.1-10.el8.x86_64
416 perl-ExtUtils-ParseXS-3.35-2.el8.noarch
417 ncurses-base-6.1-9.20180224.el8.noarch
418 python3-pyparsing-2.1.10-7.el8.noarch
419 perl-Digest-MD5-2.55-396.el8.x86_64
420 perl-JSON-PP-2.97.001-3.el8.noarch
421 perl-URI-1.73-3.el8.noarch
422 perl-srpm-macros-1-25.el8.noarch
423 perl-Time-Local-1.280-1.el8.noarch
This is my Dockerfile:
Code: # Use the official CentOS image
FROM centos:8
# Update YUM repository settings
RUN cd /etc/yum.repos.d/ \
&& sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* \
&& sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
# Install essential tools
# -----------------------------------------------------------------------------
RUN yum install -y dnf unzip zip wget
# Install EPEL repository
# -----------------------------------------------------------------------------
RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# Install development libraries
# -----------------------------------------------------------------------------
RUN dnf install -y zlib-devel openssl-devel libX11-devel libogg-devel libcurl-devel libcurl-devel alsa-lib-devel autoconf automake libtool make gcc cmake
# Download and compile libcurl from source
WORKDIR /tmp
RUN curl -LO https://curl.se/download/curl-7.74.0.tar.gz \
&& tar -xzvf curl-7.74.0.tar.gz \
&& cd curl-7.74.0 \
&& ./configure \
&& make \
&& make install \
&& cd .. \
&& rm -rf curl-7.74.0.tar.gz curl-7.74.0
# Download and install libvorbis from source
# -----------------------------------------------------------------------------
WORKDIR /tmp
RUN curl -L https://downloads.xiph.org/releases/vorbis/libvorbis-1.3.7.tar.gz -o libvorbis.tar.gz \
&& tar -xzvf libvorbis.tar.gz \
&& cd libvorbis-1.3.7 \
&& ./configure --prefix=/usr/local \
&& make \
&& make install
# Cleanup
# -----------------------------------------------------------------------------
WORKDIR /
RUN rm -rf /tmp/libvorbis-1.3.7
# Install remaining dependencies
# -----------------------------------------------------------------------------
RUN dnf install -y rsync autoconf automake gcc-c++ gmp-devel libjpeg-turbo-devel libtool curl libXext-devel alsa-lib-devel libXxf86vm-devel zlib-devel curl-devel binutils openssl-devel perl-Digest-SHA make git dnf-plugins-core
RUN dnf update -y
# Install additional dependencies
# -----------------------------------------------------------------------------
RUN dnf install -y alsa-lib desktop-file-utils gtk-update-icon-cache hicolor-icon-theme libjpeg-turbo libpng libvorbis libXpm libXxf86vm xorg-x11-proto-devel mesa-libGLU gcc make autoconf automake libtool libX11-devel libXext-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel libXxf86vm-devel mesa-libGL-devel
RUN dnf install -y libmodplug-devel dbus dbus-devel
# Build and install SDL2 from source
# -----------------------------------------------------------------------------
RUN curl -L https://github.com/libsdl-org/SDL/archive/release-2.28.5.tar.gz -o SDL-release-2.28.5.tar.gz \
&& tar -xzf SDL-release-2.28.5.tar.gz \
&& cd SDL-release-2.28.5 \
&& ./configure \
&& make \
&& make install
# Set the working directory
# -----------------------------------------------------------------------------
WORKDIR /opt/xonotic/0.8.5/
# Install required dependencies for compiling Git from source
# -----------------------------------------------------------------------------
RUN dnf install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
# Download and install Git from source
# -----------------------------------------------------------------------------
RUN curl -LO https://github.com/git/git/archive/v2.35.1.tar.gz \
&& tar xzf v2.35.1.tar.gz \
&& cd git-2.35.1 \
&& make configure \
&& ./configure --prefix=/usr/local \
&& make install \
&& cd .. \
&& rm -rf git-2.35.1 v2.35.1.tar.gz
# Add the directory containing the newly installed Git binary to the PATH
# -----------------------------------------------------------------------------
ENV PATH="/usr/local/bin:${PATH}"
# Clone the Xonotic repository
# -----------------------------------------------------------------------------
RUN git config --global pull.rebase false
RUN git clone https://gitlab.com/xonotic/xonotic.git .
# Checkout the main branch
# -----------------------------------------------------------------------------
RUN git checkout master
# Create the gmqcc directory
RUN mkdir -p /opt/xonotic/0.8.5/gmqcc
# Update and compile Xonotic
# -----------------------------------------------------------------------------
RUN ./all each /usr/local/bin/git clean -n -d \
&& ./all update -l best \
&& ./all compile -r -0 dedicated
# Expose the required ports
# -----------------------------------------------------------------------------
EXPOSE 26000/udp
# Copy server_linux.sh from the server folder to WORKDIR, inside the container
# -----------------------------------------------------------------------------
RUN cp server/server_linux.sh .
# Create a hidden folder .xonotic in the home directory
# -----------------------------------------------------------------------------
RUN mkdir -p ~/.xonotic/data
# Copy the server.cfg file from outside the container, inside the container
# -----------------------------------------------------------------------------
COPY server.cfg ~/.xonotic/data/server.cfg
# Set the default command to run when the container starts
# -----------------------------------------------------------------------------
CMD ["./server_linux.sh"]
Docker version:
Code: # docker --version
Docker version 25.0.2, build 29cf629
Besides the data folder, the folder structure looks normal. But it seems that this is normal too.
After copying server/server_linux.sh to the root folder and server.cfg to the data folder, I ended up with this problem:
Code: # docker run -p 26000:26000/udp xonotic-server:0.8.5
This script is not properly set up yet.
Please refer to the instructions in readme.txt.
In short:
- copy server.cfg to the data directory and adjust its settings
- move this file to the main directory of your Xonotic installation
I edited server.cfg but it still didn't solve my problem.
According to the readme.txt file I am supposed to copy server.cfg to ~/.xonotic/data.
I tested it with an absolute path and in the main folder, but it still didn't solve it.
This is supposed to mean that the program didn't crash, but the container exited after a second:
Code: # docker logs dd3145206ad4
[root@dd3145206ad4 0.8.5]# cd data
[root@dd3145206ad4 data]# vi server.cfg
[root@dd3145206ad4 data]# exit
exit
# docker inspect --format '{{.State.ExitCode}}' dd3145206ad4
0
Code: # docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f5dfc2c690c1 xonotic-server:0.8.5 "./server_linux.sh" 19 seconds ago Exited (1) 18 seconds ago competent_snyder
Eventually I got to this point:
Code: # docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4b58fc727632 xonotic-server:0.8.5 "./opt/xonotic/0.8.5…" 2 hours ago Created silly_dewdney
I successfully copied an edited version of server.cfg to the container with the Dockerfile:
Code: # Create hidden folders named .xonotic in the home directory
RUN mkdir -p $HOME/.xonotic/data
RUN mkdir -p ~/.xonotic/data
RUN mkdir -p /root/.xonotic/data
RUN mkdir -p data/.xonotic
# Copy the server.cfg file from outside the container, inside the container
COPY server.cfg $HOME/.xonotic/data/server.cfg
COPY server.cfg data/server.cfg
COPY server.cfg ~/.xonotic/data/server.cfg
COPY server.cfg /root/.xonotic/data/server.cfg
COPY server.cfg data/.xonotic/server.cfg
I confirmed that this is the updated version, but it still doesn't start without the first mentioned error message.
When manually starting the container it constantly restarts:
Code: # docker run --name xonotic \
> -d \
> -p 26000:26000/udp \
> --env 'GAME_PARAMS=' \
> --env 'GAME_VERSION=0.8.5' \
> --env 'UID=99' \
> --env 'GID=100' \
> --volume /mnt/user/appdata/xonotic:/opt/xonotic/0.8.5/data \
> --restart=unless-stopped \
> xonotic-server:0.8.5
4d77d57eb42714a0e004da1dcd494e629f384041c1172386f6d131a80dee2c28
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4d77d57eb427 xonotic-server:0.8.5 "./server_linux.sh" 21 seconds ago Restarting (1) 4 seconds ago xonotic
# Output Dockerfile:
Code: #40 [36/37] RUN ./all run dedicated
#40 0.308 Timing not supported.
#40 0.312 Found main repo = https://gitlab.com/xonotic/
#40 0.313 Repository . enabled because it already exists
#40 0.313 Repository data/xonotic-data.pk3dir enabled because it already exists
#40 0.313 Repository data/xonotic-music.pk3dir enabled because it already exists
#40 0.313 Repository data/xonotic-nexcompat.pk3dir disabled by default, create data/xonotic-nexcompat.pk3dir.yes to enable
#40 0.313 Repository data/xonotic-xoncompat.pk3dir disabled by default, create data/xonotic-xoncompat.pk3dir.yes to enable
#40 0.313 Repository darkplaces enabled because it already exists
#40 0.313 Repository netradiant enabled because it already exists
#40 0.313 Repository div0-gittools disabled by default, create div0-gittools.yes to enable
#40 0.314 Repository d0_blind_id enabled because it already exists
#40 0.314 Repository data/xonotic-maps.pk3dir enabled because it already exists
#40 0.314 Repository mediasource disabled by default, create mediasource.yes to enable
#40 0.314 Repository gmqcc enabled because it already exists
#40 0.314 Repository xonstat disabled by default, create xonstat.yes to enable
#40 0.314 Repository xonstatdb disabled by default, create xonstatdb.yes to enable
#40 0.314 Repository xonotic.org disabled by default, create xonotic.org.yes to enable
#40 0.314 Repository wiki disabled by default, create wiki.yes to enable
#40 0.324 + measure_time catchsegv darkplaces/darkplaces-dedicated -xonotic
#40 0.329 Game is Xonotic using base gamedir data
#40 0.329 gamename for server filtering: Xonotic
#40 0.331 Xonotic Linux dedicated, buildstring: v20140513-1395-g725fd6f8 Jan 29 2024 release
#40 0.331 Current nice level is below the soft limit - cannot use niceness
#40 0.332 Loaded library "libd0_blind_id.so.0"
#40 0.333 Loaded library "libd0_rijndael.so.0"
#40 0.335 Loaded library "libcurl.so.4"
#40 0.336 Skeletal animation uses SSE code path
#40 0.339 execing quake.rc
#40 0.340 execing default.cfg
#40 0.340 execing xonotic-common.cfg
#40 0.340 execing xonotic-client.cfg
#40 0.341 Warning: Could not expand $vid_width
#40 0.341 Warning: Could not expand $vid_height
#40 0.341 Warning: Could not expand $vid_pixelheight
#40 0.341 Warning: Could not expand $vid_desktopfullscreen
#40 0.341 execing sRGB-disable.cfg
#40 0.342 execing binds-xonotic.cfg
#40 0.344 execing effects-normal.cfg
#40 0.345 execing crosshairs.cfg
#40 0.345 execing gamemodes-client.cfg
#40 0.346 execing notifications.cfg
#40 0.355 execing _hud_common.cfg
#40 0.357 execing _hud_descriptions.cfg
#40 0.361 execing hud_luma.cfg
#40 0.362 execing xonotic-server.cfg
#40 0.369 execing testing.cfg
#40 0.369 execing balance-xonotic.cfg
#40 0.372 execing bal-wep-xonotic.cfg
#40 0.384 execing physicsX.cfg
#40 0.384 execing turrets.cfg
#40 0.395 execing vehicles.cfg
#40 0.404 execing gamemodes-server.cfg
#40 0.410 execing ctfscoring-samual.cfg
#40 0.419 execing mutators.cfg
#40 0.430 execing randomitems-xonotic.cfg
#40 0.436 execing monsters.cfg
#40 0.440 execing minigames.cfg
#40 0.441 execing physics.cfg
#40 0.452 execing cdtracks.cfg
#40 0.454 execing commands.cfg
#40 0.454 Warning: Could not expand $qport in alias _if_dedicated
#40 0.460 execing help.cfg
#40 0.461 couldn't exec config.cfg
#40 0.461 "maxplayers" set to "16"
#40 0.461 execing data/campaign.cfg
#40 0.461 execing config_update.cfg
#40 0.462 execing font-xolonium.cfg
#40 0.462 Warning: Could not expand $con_textsize
#40 0.462 Warning: Could not expand $con_notifysize
#40 0.462 Warning: Could not expand $con_chatsize
#40 0.462 Warning: Could not expand $scr_loadingscreen_barheight
#40 0.462 Warning: Could not expand $scr_infobar_height
#40 0.462 This command only works on clients: cl_cmd hud scoreboard_columns_set
#40 0.462 execing autoexec/empty.cfg
#40 0.462 execing autoexec.cfg
#40 0.462 Loaded public key key_0.d0pk (fingerprint: Xon//KssdlzGkFKdnnN4sgg8H+koTbBn5JTi37BAW1Q=)
#40 0.463 Loaded public key key_1.d0pk (fingerprint: XHub/MCjSOklCBU4ADlHX3+EcTjC0xhJ6odguyTvGp0=)
#40 0.463 Generated private ID key_0.d0pk (public key fingerprint: RHMeh4y87DbT5oHWjQ026QDo5OEKCPS7ABkEctwN3Gk=)
#40 0.464 Saved unsigned key to key_0.d0si
#40 0.464 Signature generation in progress...
#40 0.464 execing post-config.cfg
#40 0.469 SpawnServer: _init/_init
#40 0.480 Server listening on address 0.0.0.0:26000
#40 0.480 Server listening on address [0:0:0:0:0:0:0:0]:26000
#40 0.547 server: program loaded (crc 45983, size 6534K)
#40 0.991 server VM warning: 12 of 16383 bytes available, will truncate 21 byte string "INFO_ITEM_WEAPON_DROP"
#40 0.991 s221567: ce_startsolid:721: IFNOT GLOBAL48507, statement 221579
#40 0.991 s221568: ce_startsolid:721: STORE_F GLOBAL48526, GLOBAL48508
#40 0.991 s221569: ce_startsolid:721: STORE_ENT GLOBAL48507, GLOBAL48508
#40 0.992 s221570: ce_startsolid:721: FIELD_ENT GLOBAL48507, .enemy (=.enemy), GLOBAL48527
#40 0.992 s221571: ce_startsolid:721: FIELD_S GLOBAL48508, .registered_id (=.registered_id), GLOBAL10
#40 0.992 s221572: ce_startsolid:721: STORE_S GLOBAL48525, GLOBAL4
#40 0.992 s221573: ce_startsolid:721: STORE_S GLOBAL27168, GLOBAL7
#40 0.992 s221574: ce_startsolid:721: CALL3 strcat (=strcat())
#40 0.992 ce_startsolid:721 : _static_Registry_check_Notifications_1 : statement 11
#40 0.992 ./ecs/systems/sv_physics.qc:721 : __static_init_1 : statement 274
#40 0.992 :632 : __spawnfunc___init_dedicated_server : statement 35
#40 0.992 :216 : StartFrame : statement 10
#40 2.291 Server spawned.
#40 2.707 execing server.cfg
#40 2.707 maxplayers can not be changed while a server is running.
#40 2.707 It will be changed on next server startup ("map" command).
#40 2.707 "maxplayers" set to "16"
#40 2.711 Switching to map fuse
#40 2.745 SpawnServer: fuse
#40 2.801 Server listening on address 0.0.0.0:26000
#40 2.801 Server listening on address [0:0:0:0:0:0:0:0]:26000
#40 2.851 server: program loaded (crc 45983, size 6534K)
#40 3.314 server VM warning: 12 of 16383 bytes available, will truncate 21 byte string "INFO_ITEM_WEAPON_DROP"
#40 3.314 s221567: ce_startsolid:721: IFNOT GLOBAL48507, statement 221579
#40 3.314 s221568: ce_startsolid:721: STORE_F GLOBAL48526, GLOBAL48508
#40 3.314 s221569: ce_startsolid:721: STORE_ENT GLOBAL48507, GLOBAL48508
#40 3.314 s221570: ce_startsolid:721: FIELD_ENT GLOBAL48507, .enemy (=.enemy), GLOBAL48527
#40 3.314 s221571: ce_startsolid:721: FIELD_S GLOBAL48508, .registered_id (=.registered_id), GLOBAL10
#40 3.314 s221572: ce_startsolid:721: STORE_S GLOBAL48525, GLOBAL4
#40 3.314 s221573: ce_startsolid:721: STORE_S GLOBAL27168, GLOBAL7
#40 3.314 s221574: ce_startsolid:721: CALL3 strcat (=strcat())
#40 3.314 ce_startsolid:721 : _static_Registry_check_Notifications_1 : statement 11
#40 3.314 ./ecs/systems/sv_physics.qc:721 : __static_init_1 : statement 274
#40 3.314 :834 : __spawnfunc_worldspawn : statement 146
#40 3.314 :216 : StartFrame : statement 10
#40 3.417 Server spawned.
#40 3.685 Error response from keygen server: Not allowed
Can someone explain this to me:
Code: # docker run -p 26000:26000/udp xonotic-server:0.8.5
This script is not properly set up yet.
Please refer to the instructions in readme.txt.
In short:
- copy server.cfg to the data directory and adjust its settings
- move this file to the main directory of your Xonotic installation
# docker run -d -p 26000:26000/udp xonotic-server:0.8.5
3cef3fc41c9ddff644477886f64f4248c419922e83ba630d484c9da5c09d1050
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3cef3fc41c9d xonotic-server:0.8.5 "./server_linux.sh" 21 seconds ago Exited (1) 13 seconds ago zealous_ritchie
# docker run -it --entrypoint /bin/bash xonotic-server:0.8.5
[root@acd462e28062 0.8.5]# ls -la ~/.xonotic/data
total 16
drwxr-xr-x 2 root root 32 Feb 3 23:42 .
drwxr-xr-x 1 root root 32 Feb 3 23:41 ..
-rw-r--r-- 1 root root 15584 Feb 2 21:04 server.cfg
[root@acd462e28062 0.8.5]# ls -la /root/.xonotic/data
total 16
drwxr-xr-x 2 root root 32 Feb 3 23:42 .
drwxr-xr-x 1 root root 32 Feb 3 23:41 ..
-rw-r--r-- 1 root root 15584 Feb 2 21:04 server.cfg
# docker inspect xonotic-server:0.8.5 | grep -i '/root/.xonotic/data'
"/root/.xonotic/data": {}
# docker run -d -p 26000:26000 -v /root/.xonotic/data:/root/.xonotic/data xonotic-server:0.8.5
ea4a6a461e36c25c01615a73e726361972c1b2ed906abd2a48a3bed7b875a39e
# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ea4a6a461e36 xonotic-server:0.8.5 "./server_linux.sh" 25 seconds ago Exited (1) 21 seconds ago hardcore_jones7
Please advice,
J.
|