The Battle For Wesnoth (#237)

* Create Dockerfile

* Create entrypoint.sh

* Update games.yml

* Update README.md

* Update Dockerfile

* Update Dockerfile

* Rename Dockerfile to Dockerfile

* Rename entrypoint.sh to entrypoint.sh

* Update README.md

* Update games.yml

* Update README.md

* Update Dockerfile

* Update Dockerfile

make it actually work.
This commit is contained in:
mattman107
2024-04-19 10:10:42 -04:00
committed by GitHub
parent 8671cd15cb
commit 3798abab4e
4 changed files with 41 additions and 0 deletions

View File

@@ -23,6 +23,7 @@ jobs:
- samp - samp
- source - source
- valheim - valheim
- thebattleforwesnoth
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4

View File

@@ -138,6 +138,8 @@ is tagged correctly.
* `ghcr.io/parkervcp/games:samp` * `ghcr.io/parkervcp/games:samp`
* [`source`](/games/source) * [`source`](/games/source)
* `ghcr.io/parkervcp/games:source` * `ghcr.io/parkervcp/games:source`
* [`thebattleforwesnoth`](/games/thebattleforwesnoth)
* `ghcr.io/parkervcp/games:thebattleforwesnoth`
* [`valheim`](/games/valheim) * [`valheim`](/games/valheim)
* `ghcr.io/parkervcp/games:valheim` * `ghcr.io/parkervcp/games:valheim`

View File

@@ -0,0 +1,25 @@
FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm-slim
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
## update base packages
RUN apt update && apt upgrade -y
## install dependencies
RUN apt install -y gcc g++ libgcc1 libc++-dev gdb libc6 git tar zip unzip libssl-dev tini iproute2 \
libboost-filesystem-dev libboost-iostreams-dev libboost-locale-dev libboost-random-dev libboost-regex-dev libboost-program-options-dev libboost-system-dev libboost-coroutine-dev libboost-graph-dev \
libsdl2-dev libcurl4-openssl-dev libcairo2-dev libvorbis-dev libbz2-dev zlib1g-dev libssl-dev libcrypto++-dev openssl cmake libsdl2-image-dev libsdl2-mixer-dev libsdl-pango-dev
## add container user
RUN useradd -m -d /home/container -s /bin/bash container
USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
STOPSIGNAL SIGINT
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
CMD ["/entrypoint.sh"]

View File

@@ -0,0 +1,13 @@
#!/bin/bash
cd /home/container
# Make internal Docker IP address available to processes.
INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}')
export INTERNAL_IP
# Replace Startup Variables
MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')
echo -e ":/home/container$ ${MODIFIED_STARTUP}"
# Run the Server
eval ${MODIFIED_STARTUP}