Move a bunch of files around, try to get things working

This commit is contained in:
Dane Everitt 2021-05-15 12:26:45 -07:00
parent 72443f7789
commit ee444da25a
44 changed files with 327 additions and 497 deletions

36
.github/workflows/games.yml vendored Normal file
View file

@ -0,0 +1,36 @@
on:
push:
branches:
- tt_master
paths:
- tt_games/**
jobs:
push:
name: "games:${{ matrix.tag }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
game:
- fivem
- source
steps:
- uses: actions/checkout@v2
- uses: docker/setup-buildx-action@v1
with:
version: "v0.5.1"
buildkitd-flags: --debug
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- uses: docker/build-push-action@v2
with:
context: ./games
file: ./games/${{ matrix.game }}/Dockerfile
platforms: linux/amd64
push: true
tags: |
ghcr.io/pterodactyl/games:${{ matrix.tag }}

37
.github/workflows/go.yml vendored Normal file
View file

@ -0,0 +1,37 @@
on:
push:
branches:
- master
paths:
- tt_go/**
jobs:
push:
name: "yolks:go_${{ matrix.tag }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
tag:
- 1.14
- 1.15
- 1.16
steps:
- uses: actions/checkout@v2
- uses: docker/setup-buildx-action@v1
with:
version: "v0.5.1"
buildkitd-flags: --debug
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- uses: docker/build-push-action@v2
with:
context: ./go
file: ./go/${{ matrix.tag }}/Dockerfile
platforms: linux/amd64
push: true
tags: |
ghcr.io/pterodactyl/yolks:go_${{ matrix.tag }}

36
.github/workflows/installers.yml vendored Normal file
View file

@ -0,0 +1,36 @@
on:
push:
branches:
- tt_master
paths:
- installers/**
jobs:
push:
name: "yolk_installers:{{ matrix.tag }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
tag:
- alpine
- source
steps:
- uses: actions/checkout@v2
- uses: docker/setup-buildx-action@v1
with:
version: "v0.5.1"
buildkitd-flags: --debug
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- uses: docker/build-push-action@v2
with:
context: ./installers
file: ./installers/${{ matrix.tag }}/Dockerfile
platforms: linux/amd64
push: true
tags: |
ghcr.io/pterodactyl/yolk_installers:${{ matrix.tag }}

View file

@ -3,10 +3,11 @@ on:
branches:
- master
paths:
- java/*
- tt_java/**
jobs:
push:
name: "yolks:java_${{ matrix.tag }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false

38
.github/workflows/nodejs.yml vendored Normal file
View file

@ -0,0 +1,38 @@
on:
push:
branches:
- master
paths:
- tt_nodejs/*
jobs:
push:
name: "yolks:nodejs_${{ matrix.tag }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
tag:
- 12
- 14
- 15
- 16
steps:
- uses: actions/checkout@v2
- uses: docker/setup-buildx-action@v1
with:
version: "v0.5.1"
buildkitd-flags: --debug
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- uses: docker/build-push-action@v2
with:
context: ./nodejs
file: ./nodejs/${{ matrix.tag }}/Dockerfile
platforms: linux/amd64
push: true
tags: |
ghcr.io/pterodactyl/yolks:nodejs_${{ matrix.tag }}

37
.github/workflows/python.yml vendored Normal file
View file

@ -0,0 +1,37 @@
on:
push:
branches:
- master
paths:
- tt_python/**
jobs:
push:
name: "yolks:python_${{ matrix.tag }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
tag:
- 3.7
- 3.8
- 3.9
steps:
- uses: actions/checkout@v2
- uses: docker/setup-buildx-action@v1
with:
version: "v0.5.1"
buildkitd-flags: --debug
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.REGISTRY_TOKEN }}
- uses: docker/build-push-action@v2
with:
context: ./python
file: ./python/${{ matrix.tag }}/Dockerfile
platforms: linux/amd64
push: true
tags: |
ghcr.io/pterodactyl/yolks:python_${{ matrix.tag }}

67
.github/workflows/yolks.yml vendored Normal file
View file

@ -0,0 +1,67 @@
on:
push:
branches:
- master
paths-ignore:
- games
- installers
jobs:
changes:
runs-on: ubuntu-latest
outputs:
images: ${{ steps.filter.outputs.changes }}
steps:
- uses: actions/checkout@v2
- uses: dorny/paths-filter@v2
id: filter
with:
base: HEAD
filters: |
alpine: alpine
go_1.14: go/1.14
go_1.15: go/1.15
go_1.16: go/1.16
python_3.7: python/3.7
python_3.8: python/3.8
python_3.9: python/3.9
nodejs_12: nodejs/12
nodejs_13: nodejs/13
nodejs_14: nodejs/14
nodejs_15: nodejs/15
java_7: java/7
java_8: java/8
java_9: java/9
java_11: java/11
java_14: java/14
java_16: java/16
push:
needs: changes
# name: "yolks:python_${{ matrix.tag }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
image: ${{ fromJSON(needs.changes.outputs.images) }}
steps:
- uses: actions/checkout@v2
- run: |
echo "${{ matrix.image }}"
# - uses: docker/setup-buildx-action@v1
# with:
# version: "v0.5.1"
# buildkitd-flags: --debug
# - uses: docker/login-action@v1
# with:
# registry: ghcr.io
# username: ${{ github.repository_owner }}
# password: ${{ secrets.REGISTRY_TOKEN }}
# - uses: docker/build-push-action@v2
# with:
# context: ./python
# file: ./python/${{ matrix.tag }}/Dockerfile
# platforms: linux/amd64
# push: true
# tags: |
# ghcr.io/pterodactyl/yolks:python_${{ matrix.tag }}

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM alpine:latest
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates tzdata \

View file

@ -26,16 +26,18 @@
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
INTERNAL_IP=$(ip route get 1 | awk '{print $NF;exit}')
export INTERNAL_IP
# Switch to the container's working directory
cd /home/container || exit 1
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')")
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}
exec env "${MODIFIED_STARTUP}"

View file

@ -1,41 +0,0 @@
#!/bin/ash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM alpine:latest
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates c-ares icu-libs libssl1.1 libunwind musl musl-dbg tzdata zlib \

View file

@ -26,19 +26,18 @@
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
INTERNAL_IP=$(ip route get 1 | awk '{print $NF;exit}')
export INTERNAL_IP
# Print Go version
go version
# Switch to the container's working directory
cd /home/container || exit 1
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')")
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}
exec env "${MODIFIED_STARTUP}"

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM debian:stable-slim
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
ENV DEBIAN_FRONTEND=noninteractive

View file

@ -26,16 +26,17 @@
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
INTERNAL_IP=$(ip route get 1 | awk '{print $NF;exit}')
export INTERNAL_IP
# Switch to the container's working directory
cd /home/container || exit 1
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')")
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}
exec env "${MODIFIED_STARTUP}"

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM golang:1.14-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM golang:1.15-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM golang:1.16-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -26,19 +26,20 @@
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
INTERNAL_IP=$(ip route get 1 | awk '{print $NF;exit}')
export INTERNAL_IP
# Switch to the container's working directory
cd /home/container || exit 1
# Print Go version
go version
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')")
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}
exec env "${MODIFIED_STARTUP}"

View file

@ -1,44 +0,0 @@
#!/bin/ash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
# Print Go version
go version
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM alpine:latest
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl git jq wget

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM debian:stable-slim
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
ENV DEBIAN_FRONTEND=noninteractive

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM adoptopenjdk/openjdk11-openj9:alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl fontconfig git openssl sqlite tar tzdata \

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM adoptopenjdk/openjdk14-openj9:alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl fontconfig git openssl sqlite tar tzdata \

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM adoptopenjdk/openjdk16-openj9:alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl fontconfig git openssl sqlite tar tzdata \

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM openjdk:7-jre-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl fontconfig git openssl sqlite tar tzdata \

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM ibmjava:8-jre-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl fontconfig git openssl sqlite tar tzdata \

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM adoptopenjdk/openjdk9-openj9:alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl fontconfig git openssl sqlite tar tzdata \

View file

@ -1,44 +0,0 @@
#!/bin/ash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
# Print Node.js version
node -v
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}

View file

@ -1,44 +0,0 @@
#!/bin/ash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
# Print Node.js version
node -v
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}

View file

@ -1,44 +0,0 @@
#!/bin/ash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
# Print Node.js version
node -v
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM node:12-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl ffmpeg git openssl sqlite tar tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM node:14-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl ffmpeg git openssl sqlite tar tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM node:15-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl ffmpeg git openssl sqlite tar tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM node:16-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl ffmpeg git openssl sqlite tar tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -26,19 +26,20 @@
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
INTERNAL_IP=$(ip route get 1 | awk '{print $NF;exit}')
export INTERNAL_IP
# Switch to the container's working directory
cd /home/container || exit 1
# Print Node.js version
node -v
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')")
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}
exec env "${MODIFIED_STARTUP}"

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM python:3.7-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl ffmpeg g++ gcc git openssl sqlite tar tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM python:3.8-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl ffmpeg g++ gcc git openssl sqlite tar tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -24,7 +24,7 @@ FROM --platform=$BUILDPLATFORM python:3.9-alpine
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
LABEL org.opencontainers.image.licenses=MIT
RUN apk add --update --no-cache ca-certificates curl ffmpeg g++ gcc git openssl sqlite tar tzdata \
@ -34,5 +34,5 @@ USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
COPY ./../entrypoint.sh /entrypoint.sh
CMD [ "/bin/ash", "/entrypoint.sh" ]

View file

@ -26,19 +26,20 @@
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
INTERNAL_IP=$(ip route get 1 | awk '{print $NF;exit}')
export INTERNAL_IP
# Switch to the container's working directory
cd /home/container || exit 1
# Print Python version
python --version
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')")
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}
exec env "${MODIFIED_STARTUP}"

View file

@ -1,44 +0,0 @@
#!/bin/ash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
# Print Python version
python --version
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}

View file

@ -1,44 +0,0 @@
#!/bin/ash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC.
TZ=${TZ:-UTC}
export TZ
# Switch to the container's working directory
cd /home/container
# Set environment variable that holds the Internal Docker IP
export INTERNAL_IP=`ip route get 1 | awk '{print $NF;exit}'`
# Print Python version
python --version
# Replace variables in the startup command
MODIFIED_STARTUP=`eval echo $(echo ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')`
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "${MODIFIED_STARTUP}"
# Run the startup command
exec env ${MODIFIED_STARTUP}

View file

@ -1,52 +0,0 @@
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
FROM --platform=$BUILDPLATFORM debian:stable-slim
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
LABEL org.opencontainers.image.source="https://github.com/matthewpi/images"
LABEL org.opencontainers.image.licenses=MIT
ENV DEBIAN_FRONTEND=noninteractive
RUN dpkg --add-architecture i386 \
&& apt update \
&& apt upgrade -y \
&& apt install -y gnupg wget \
&& wget -q https://dl.winehq.org/wine-builds/winehq.key -O- | apt-key add - \
&& echo "deb https://dl.winehq.org/wine-builds/debian/ buster main" >> /etc/apt/sources.list \
&& apt update \
&& apt install -y curl g++ gcc gdb iproute2 lib32gcc1 lib32stdc++6 lib32tinfo6 lib32z1 libcurl3-gnutls:i386 libcurl4-gnutls-dev:i386 libcurl4:i386 libfontconfig libgcc1 libncurses5:i386 libncurses6:i386 libntlm0 libsdl1.2debian libsdl2-2.0-0:i386 libssl1.1:i386 libtinfo6:i386 net-tools netcat python3 tar telnet tzdata winbind xauth xvfb \
&& wget -nc https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/Debian_10/amd64/libfaudio0_20.01-0~buster_amd64.deb \
&& wget -nc https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/Debian_10/i386/libfaudio0_20.01-0~buster_i386.deb \
&& apt install -y ./libfaudio0_20.01-0~buster_* \
&& apt install -y --install-recommends cabextract winehq-stable \
&& useradd -m -d /home/container container \
&& rm -rf /libfaudio0_20.01-0~buster_amd64.deb /libfaudio0_20.01-0~buster_i386.deb /var/lib/apt/lists/*
USER container
ENV USER=container HOME=/home/container
WORKDIR /home/container
COPY ./entrypoint.sh /entrypoint.sh
CMD [ "/bin/bash", "/entrypoint.sh" ]

View file

@ -1,2 +0,0 @@
# Satisfactory
SoonTM

View file

@ -1,68 +0,0 @@
#!/bin/bash
#
# Copyright (c) 2021 Matthew Penner
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#
# Default the TZ environment variable to UTC
TZ=${TZ:-UTC}
export TZ
# Set the GAMECONFIGDIR environment variable
GAMECONFIGDIR="/home/container/.wine/drive_c/users/container/Local Settings/Application Data/FactoryGame/Saved"
export GAMECONFIGDIR
# Switch to the container's working directory
cd /home/container
# Create required directories
mkdir -p /home/container/config /home/container/gamefiles /home/container/saves "$GAMECONFIGDIR/Config/WindowsNoEditor" "$GAMECONFIGDIR/Logs" "$GAMECONFIGDIR/SaveGames/common"
# Touch the log file
touch "$GAMECONFIGDIR/Logs/FactoryGame.log"
# Copy config files
cp /home/container/config/{Engine.ini,Game.ini,Scalability.ini} "$GAMECONFIGDIR/Config/WindowsNoEditor/"
# Copy save files
cp -rp /home/container/saves/*.sav "$GAMECONFIGDIR/SaveGames/common/"
# Get the latest save file
LATEST_SAVE_FILE=$(ls -Art "$GAMECONFIGDIR/SaveGames/common" | tail -n 1)
# Move latest save file
if [[ ! "$LATEST_SAVE_FILE" == "savefile.sav" ]]; then
printf "\\nMoving most recent save (%s) to savefile.sav\\n" "$LATEST_SAVE_FILE"
mv "$GAMECONFIGDIR/SaveGames/common/$LATEST_SAVE_FILE" "$GAMECONFIGDIR/SaveGames/common/savefile.sav"
fi
# Switch to the gamefiles directory
cd /home/container/gamefiles
# Start Satisfactory (runs in the background)
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "wine start FactoryGame.exe -nosteamclient -nullrhi -nosplash -nosound"
wine start FactoryGame.exe -nosteamclient -nullrhi -nosplash -nosound
# Tail the satisfactory log file
printf '\033[1m\033[33mcontainer@pterodactyl~ \033[0m'
echo "tail -f \"$GAMECONFIGDIR/Logs/FactoryGame.log\""
tail -f "$GAMECONFIGDIR/Logs/FactoryGame.log"