diff --git a/.github/workflows/java.yml b/.github/workflows/java.yml index b419a454d..f5461ef47 100644 --- a/.github/workflows/java.yml +++ b/.github/workflows/java.yml @@ -27,6 +27,7 @@ jobs: - 18j9 - 19 - 19j9 + - 21 steps: - uses: actions/checkout@v3 - uses: docker/setup-qemu-action@v2 diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index 0fd9cd7d2..5eee70ddc 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -22,6 +22,7 @@ jobs: - 16 - 17 - 18 + - 20 steps: - uses: actions/checkout@v3 # Setup QEMU for ARM64 Build diff --git a/README.md b/README.md index 88ea3e3af..3b2f508f9 100644 --- a/README.md +++ b/README.md @@ -71,6 +71,8 @@ is tagged correctly. * `ghcr.io/pterodactyl/yolks:java_19` * [`java19 - OpenJ9`](https://github.com/pterodactyl/yolks/tree/master/java/19j9) * `ghcr.io/pterodactyl/yolks:java_19j9` + * [`java21`](https://github.com/pterodactyl/yolks/tree/master/java/21) + * `ghcr.io/pterodactyl/yolks:java_21` * [`nodejs`](https://github.com/pterodactyl/yolks/tree/master/nodejs) * [`node12`](https://github.com/pterodactyl/yolks/tree/master/nodejs/12) * `ghcr.io/pterodactyl/yolks:nodejs_12` @@ -84,6 +86,8 @@ is tagged correctly. * `ghcr.io/pterodactyl/yolks:nodejs_17` * [`node18`](https://github.com/pterodactyl/yolks/tree/master/nodejs/18) * `ghcr.io/pterodactyl/yolks:nodejs_18` + * [`node20`](https://github.com/pterodactyl/yolks/tree/master/nodejs/18) + * `ghcr.io/pterodactyl/yolks:nodejs_20` * [`python`](https://github.com/pterodactyl/yolks/tree/master/python) * [`python3.7`](https://github.com/pterodactyl/yolks/tree/master/python/3.7) * `ghcr.io/pterodactyl/yolks:python_3.7` diff --git a/java/21/Dockerfile b/java/21/Dockerfile new file mode 100644 index 000000000..6dba24aea --- /dev/null +++ b/java/21/Dockerfile @@ -0,0 +1,39 @@ +# +# 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=$TARGETOS/$TARGETARCH eclipse-temurin:21-jdk + +LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io" + +LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks" +LABEL org.opencontainers.image.licenses=MIT + +RUN apt-get update -y \ + && apt-get install -y lsof curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 tzdata iproute2 libstdc++6 \ + && useradd -d /home/container -m container + +USER container +ENV USER=container HOME=/home/container +WORKDIR /home/container + +COPY ./../entrypoint.sh /entrypoint.sh +CMD [ "/bin/bash", "/entrypoint.sh" ] diff --git a/nodejs/20/Dockerfile b/nodejs/20/Dockerfile new file mode 100644 index 000000000..92aed7092 --- /dev/null +++ b/nodejs/20/Dockerfile @@ -0,0 +1,38 @@ +# +# 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=$TARGETOS/$TARGETARCH node:20-alpine + +LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io" + +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 \ + && adduser -D -h /home/container container + +USER container +ENV USER=container HOME=/home/container +WORKDIR /home/container + +COPY ./../entrypoint.sh /entrypoint.sh +CMD [ "/bin/ash", "/entrypoint.sh" ]