34
.github/workflows/games.yml
vendored
34
.github/workflows/games.yml
vendored
@@ -9,8 +9,8 @@ on:
|
||||
paths:
|
||||
- games/**
|
||||
jobs:
|
||||
push:
|
||||
name: "games:${{ matrix.game }}"
|
||||
pushAMD64:
|
||||
name: "games_AMD64:${{ matrix.game }}"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
@@ -42,3 +42,33 @@ jobs:
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/parkervcp/games:${{ matrix.game }}
|
||||
pushAll:
|
||||
name: "games_All:${{ matrix.tag }}"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
tag:
|
||||
- minetest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@2
|
||||
with:
|
||||
platforms: arm64,amd64
|
||||
- uses: docker/setup-buildx-action@v2
|
||||
with:
|
||||
buildkitd-flags: --debug
|
||||
- uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: ./games/${{ matrix.tag }}
|
||||
file: ./games/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/parkervcp/games:${{ matrix.game }}
|
@@ -93,6 +93,8 @@ is tagged correctly.
|
||||
* `ghcr.io/parkervcp/games:arma3`
|
||||
* [`dayz`](/games/dayz)
|
||||
* `ghcr.io/parkervcp/games:dayz`
|
||||
* [`minetest`](/games/minetest)
|
||||
* `ghcr.io/parkervcp/games:minetest`
|
||||
* [`mohaa`](games/mohaa)
|
||||
* `ghcr.io/pterodactyl/games:mohaa`
|
||||
* [`samp`](/games/samp)
|
||||
|
16
games/minetest/Dockerfile
Normal file
16
games/minetest/Dockerfile
Normal file
@@ -0,0 +1,16 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ubuntu:20.04
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y curl ca-certificates openssl git tar gnupg2 sqlite3 fontconfig tzdata iproute2 libfreetype6 software-properties-common \
|
||||
&& useradd -d /home/container -m container
|
||||
|
||||
RUN add-apt-repository -y ppa:minetestdevs/stable
|
||||
RUN apt update && apt -y install minetest
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/bash", "/entrypoint.sh" ]
|
23
games/minetest/entrypoint.sh
Normal file
23
games/minetest/entrypoint.sh
Normal file
@@ -0,0 +1,23 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Default the TZ environment variable to UTC.
|
||||
TZ=${TZ:-UTC}
|
||||
export TZ
|
||||
|
||||
# Set environment variable that holds the Internal Docker IP
|
||||
INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}')
|
||||
export INTERNAL_IP
|
||||
|
||||
# Switch to the container's working directory
|
||||
cd /home/container || exit 1
|
||||
|
||||
# Print minetest version
|
||||
printf "\033[1m\033[33mcontainer@pterodactyl~ \033[0mminetest --version\n"
|
||||
minetest --version
|
||||
|
||||
# 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}
|
Reference in New Issue
Block a user