├── .github ├── ISSUE_TEMPLATE │ └── config.yml ├── dependabot.yml └── workflows │ ├── games.yml │ ├── java-corretto.yml │ ├── java-dragonwell.yml │ ├── java-graalvm.yml │ ├── java-liberica.yml │ ├── java-openj9.yml │ ├── java-shenandoah.yml │ ├── java-zulu.yml │ ├── java.yml │ ├── nodejs.yml │ └── python.yml ├── LICENSE ├── README.md ├── games └── source-sourcemod │ ├── Dockerfile │ └── entrypoint.sh ├── java-corretto ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 19 │ └── Dockerfile ├── 20 │ └── Dockerfile ├── 21 │ └── Dockerfile └── entrypoint.sh ├── java-dragonwell ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 21 │ └── Dockerfile └── entrypoint.sh ├── java-graalvm ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 21 │ └── Dockerfile ├── 22 │ └── Dockerfile └── entrypoint.sh ├── java-liberica ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 21 │ └── Dockerfile ├── 22 │ └── Dockerfile └── entrypoint.sh ├── java-openj9 ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 16 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 18 │ └── Dockerfile ├── 20 │ └── Dockerfile ├── 21 │ └── Dockerfile └── entrypoint.sh ├── java-shenandoah ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 21 │ └── Dockerfile └── entrypoint.sh ├── java-zulu ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 16 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 18 │ └── Dockerfile ├── 19 │ └── Dockerfile ├── 20 │ └── Dockerfile ├── 21 │ └── Dockerfile ├── 22 │ └── Dockerfile └── entrypoint.sh ├── java ├── 8 │ └── Dockerfile ├── 11 │ └── Dockerfile ├── 16 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 18 │ └── Dockerfile ├── 19 │ └── Dockerfile ├── 20 │ └── Dockerfile ├── 21 │ └── Dockerfile ├── 22 │ └── Dockerfile └── entrypoint.sh ├── nodejs ├── 12 │ └── Dockerfile ├── 14 │ └── Dockerfile ├── 15 │ └── Dockerfile ├── 16 │ └── Dockerfile ├── 17 │ └── Dockerfile ├── 18 │ └── Dockerfile ├── 19 │ └── Dockerfile ├── 20 │ └── Dockerfile ├── 21 │ └── Dockerfile ├── 22 │ └── Dockerfile └── entrypoint.sh └── python ├── 2.7 └── Dockerfile ├── 3.10 └── Dockerfile ├── 3.11 └── Dockerfile ├── 3.12 └── Dockerfile ├── 3.13-rc └── Dockerfile ├── 3.6 └── Dockerfile ├── 3.7 └── Dockerfile ├── 3.8 └── Dockerfile ├── 3.9 └── Dockerfile └── entrypoint.sh /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | # Maintain Github workflows 9 | - package-ecosystem: "github-actions" 10 | directory: "/" # Must be set to / although they're located in .github/workflows 11 | schedule: 12 | interval: "weekly" 13 | -------------------------------------------------------------------------------- /.github/workflows/games.yml: -------------------------------------------------------------------------------- 1 | name: build games 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - games/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: games-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | push: 23 | name: "games_${{ matrix.tag }}" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - source-sourcemod 30 | steps: 31 | - name: Git checkout for Github repository workspace 32 | uses: actions/checkout@v4 33 | 34 | - name: Setup Docker buildx 35 | uses: docker/setup-buildx-action@v3 36 | with: 37 | buildkitd-flags: --debug 38 | 39 | - name: Login to registry 40 | uses: docker/login-action@v3 41 | with: 42 | registry: ghcr.io 43 | username: ${{ github.repository_owner }} 44 | password: ${{ secrets.GITHUB_TOKEN }} 45 | 46 | - name: Build and push image 47 | uses: docker/build-push-action@v6 48 | with: 49 | context: ./games 50 | platforms: linux/amd64 51 | file: ./games/${{ matrix.tag }}/Dockerfile 52 | push: true 53 | tags: ghcr.io/software-noob/pterodactyl-images:games_${{ matrix.tag }} 54 | -------------------------------------------------------------------------------- /.github/workflows/java-corretto.yml: -------------------------------------------------------------------------------- 1 | name: build java_corretto 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - java-corretto/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: java-corretto-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | build_and_push: 23 | name: "java_${{ matrix.tag }}_corretto" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 8 30 | - 11 31 | - 17 32 | - 19 33 | - 20 34 | - 21 35 | steps: 36 | - name: Git checkout for Github repository workspace 37 | uses: actions/checkout@v4 38 | 39 | - name: Setup QEMU for multiarch builds 40 | uses: docker/setup-qemu-action@v3 41 | 42 | - name: Setup Docker buildx 43 | uses: docker/setup-buildx-action@v3 44 | with: 45 | buildkitd-flags: --debug 46 | 47 | - name: Login to registry 48 | uses: docker/login-action@v3 49 | with: 50 | registry: ghcr.io 51 | username: ${{ github.repository_owner }} 52 | password: ${{ secrets.GITHUB_TOKEN }} 53 | 54 | - name: Build and push image 55 | uses: docker/build-push-action@v6 56 | with: 57 | context: ./java-corretto 58 | platforms: linux/amd64,linux/arm64 59 | file: ./java-corretto/${{ matrix.tag }}/Dockerfile 60 | push: true 61 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }}_corretto 62 | -------------------------------------------------------------------------------- /.github/workflows/java-dragonwell.yml: -------------------------------------------------------------------------------- 1 | name: build java_dragonwell 2 | on: 3 | workflow_dispatch: 4 | schedule: 5 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 6 | push: 7 | branches: 8 | - main 9 | paths: 10 | - java-dragonwell/** 11 | 12 | permissions: 13 | actions: read 14 | packages: write 15 | 16 | concurrency: 17 | group: java-dragonwell-${{ github.ref }}-1 18 | cancel-in-progress: true 19 | 20 | jobs: 21 | build_and_push: 22 | name: "java_${{ matrix.tag }}_dragonwell" 23 | runs-on: ubuntu-latest 24 | strategy: 25 | fail-fast: false 26 | matrix: 27 | tag: 28 | - 8 29 | - 11 30 | - 17 31 | - 21 32 | steps: 33 | - name: Git checkout for Github repository workspace 34 | uses: actions/checkout@v4 35 | 36 | - name: Setup Docker buildx 37 | uses: docker/setup-buildx-action@v3 38 | with: 39 | buildkitd-flags: --debug 40 | 41 | - name: Login to registry 42 | uses: docker/login-action@v3 43 | with: 44 | registry: ghcr.io 45 | username: ${{ github.repository_owner }} 46 | password: ${{ secrets.GITHUB_TOKEN }} 47 | 48 | - name: Build and push image 49 | uses: docker/build-push-action@v6 50 | with: 51 | context: ./java-dragonwell 52 | platforms: linux/amd64, linux/arm64 53 | file: ./java-dragonwell/${{ matrix.tag }}/Dockerfile 54 | push: true 55 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }}_dragonwell 56 | -------------------------------------------------------------------------------- /.github/workflows/java-graalvm.yml: -------------------------------------------------------------------------------- 1 | name: build java_graalvm 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - java-graalvm/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: java-graalvm-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | build_and_push: 23 | name: "java_${{ matrix.tag }}_graalvm" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 8 30 | - 11 31 | - 17 32 | - 21 33 | - 22 34 | steps: 35 | - name: Git checkout for Github repository workspace 36 | uses: actions/checkout@v4 37 | 38 | - name: Setup QEMU for multiarch builds 39 | uses: docker/setup-qemu-action@v3 40 | 41 | - name: Setup Docker buildx 42 | uses: docker/setup-buildx-action@v3 43 | with: 44 | buildkitd-flags: --debug 45 | 46 | - name: Login to registry 47 | uses: docker/login-action@v3 48 | with: 49 | registry: ghcr.io 50 | username: ${{ github.repository_owner }} 51 | password: ${{ secrets.GITHUB_TOKEN }} 52 | 53 | - name: Build and push image 54 | uses: docker/build-push-action@v6 55 | with: 56 | context: ./java-graalvm 57 | platforms: linux/amd64,linux/arm64 58 | file: ./java-graalvm/${{ matrix.tag }}/Dockerfile 59 | push: true 60 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }}_graalvm 61 | -------------------------------------------------------------------------------- /.github/workflows/java-liberica.yml: -------------------------------------------------------------------------------- 1 | name: build java_liberica 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - java-liberica/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: java-liberica-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | push: 23 | name: "java_${{ matrix.tag }}_liberica" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 8 30 | - 11 31 | - 17 32 | - 21 33 | - 22 34 | steps: 35 | - name: Git checkout for Github repository workspace 36 | uses: actions/checkout@v4 37 | 38 | - name: Setup QEMU for multiarch builds 39 | uses: docker/setup-qemu-action@v3 40 | 41 | - name: Setup Docker buildx 42 | uses: docker/setup-buildx-action@v3 43 | with: 44 | buildkitd-flags: --debug 45 | 46 | - name: Login to registry 47 | uses: docker/login-action@v3 48 | with: 49 | registry: ghcr.io 50 | username: ${{ github.repository_owner }} 51 | password: ${{ secrets.GITHUB_TOKEN }} 52 | 53 | - name: Build and push image 54 | uses: docker/build-push-action@v6 55 | with: 56 | context: ./java-liberica 57 | platforms: linux/amd64, linux/arm64 58 | file: ./java-liberica/${{ matrix.tag }}/Dockerfile 59 | push: true 60 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }}_liberica 61 | -------------------------------------------------------------------------------- /.github/workflows/java-openj9.yml: -------------------------------------------------------------------------------- 1 | name: build java_openj9 2 | on: 3 | workflow_dispatch: 4 | schedule: 5 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 6 | push: 7 | branches: 8 | - main 9 | paths: 10 | - java-openj9/** 11 | 12 | permissions: 13 | actions: read 14 | packages: write 15 | 16 | concurrency: 17 | group: java-openj9-${{ github.ref }}-1 18 | cancel-in-progress: true 19 | 20 | jobs: 21 | build_and_push: 22 | name: "java_${{ matrix.tag }}_openj9" 23 | runs-on: ubuntu-latest 24 | strategy: 25 | fail-fast: false 26 | matrix: 27 | tag: 28 | - 8 29 | - 11 30 | - 16 31 | - 17 32 | - 18 33 | - 20 34 | - 21 35 | steps: 36 | - name: Git checkout for Github repository workspace 37 | uses: actions/checkout@v4 38 | 39 | - name: Setup Docker buildx 40 | uses: docker/setup-buildx-action@v3 41 | with: 42 | buildkitd-flags: --debug 43 | 44 | - name: Login to registry 45 | uses: docker/login-action@v3 46 | with: 47 | registry: ghcr.io 48 | username: ${{ github.repository_owner }} 49 | password: ${{ secrets.GITHUB_TOKEN }} 50 | 51 | - name: Build and push image 52 | uses: docker/build-push-action@v6 53 | with: 54 | context: ./java-openj9 55 | platforms: linux/amd64,linux/arm64 56 | file: ./java-openj9/${{ matrix.tag }}/Dockerfile 57 | push: true 58 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }}_openj9 59 | -------------------------------------------------------------------------------- /.github/workflows/java-shenandoah.yml: -------------------------------------------------------------------------------- 1 | name: build java_shenandoah (shipilev openjdk) 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - java-shenandoah/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: java-shenandoah-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | build_and_push: 23 | name: "java_${{ matrix.tag }}_shenandoah" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 8 30 | - 11 31 | - 17 32 | - 21 33 | steps: 34 | - name: Git checkout for Github repository workspace 35 | uses: actions/checkout@v4 36 | 37 | - name: Setup QEMU for multiarch builds 38 | uses: docker/setup-qemu-action@v3 39 | 40 | - name: Setup Docker buildx 41 | uses: docker/setup-buildx-action@v3 42 | with: 43 | buildkitd-flags: --debug 44 | 45 | - name: Login to registry 46 | uses: docker/login-action@v3 47 | with: 48 | registry: ghcr.io 49 | username: ${{ github.repository_owner }} 50 | password: ${{ secrets.GITHUB_TOKEN }} 51 | 52 | - name: Build and push image 53 | uses: docker/build-push-action@v6 54 | with: 55 | context: ./java-shenandoah 56 | platforms: linux/amd64,linux/arm64 57 | file: ./java-shenandoah/${{ matrix.tag }}/Dockerfile 58 | push: true 59 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }}_shenandoah 60 | -------------------------------------------------------------------------------- /.github/workflows/java-zulu.yml: -------------------------------------------------------------------------------- 1 | name: build java_zulu 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - java-zulu/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: java-zulu-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | push: 23 | name: "pterodactyl-images:java_${{ matrix.tag }}_zulu" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 8 30 | - 11 31 | - 16 32 | - 17 33 | - 18 34 | - 19 35 | - 20 36 | - 21 37 | - 22 38 | steps: 39 | - name: Git checkout for Github repository workspace 40 | uses: actions/checkout@v4 41 | 42 | - name: Setup QEMU for multiarch builds 43 | uses: docker/setup-qemu-action@v3 44 | 45 | - name: Setup Docker buildx 46 | uses: docker/setup-buildx-action@v3 47 | with: 48 | buildkitd-flags: --debug 49 | 50 | - name: Login to registry 51 | uses: docker/login-action@v3 52 | with: 53 | registry: ghcr.io 54 | username: ${{ github.repository_owner }} 55 | password: ${{ secrets.GITHUB_TOKEN }} 56 | 57 | - name: Build and push image 58 | uses: docker/build-push-action@v6 59 | with: 60 | context: ./java-zulu 61 | platforms: linux/amd64, linux/arm64 62 | file: ./java-zulu/${{ matrix.tag }}/Dockerfile 63 | push: true 64 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }}_zulu 65 | -------------------------------------------------------------------------------- /.github/workflows/java.yml: -------------------------------------------------------------------------------- 1 | name: build java 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - java/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: java-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | push: 23 | name: "java_${{ matrix.tag }}" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 8 30 | - 16 31 | - 17 32 | - 18 33 | - 19 34 | - 20 35 | - 21 36 | - 22 37 | steps: 38 | - name: Git checkout for Github repository workspace 39 | uses: actions/checkout@v4 40 | 41 | - name: Setup QEMU for multiarch builds 42 | uses: docker/setup-qemu-action@v3 43 | 44 | - name: Setup Docker buildx 45 | uses: docker/setup-buildx-action@v3 46 | with: 47 | buildkitd-flags: --debug 48 | 49 | - name: Login to registry 50 | uses: docker/login-action@v3 51 | with: 52 | registry: ghcr.io 53 | username: ${{ github.repository_owner }} 54 | password: ${{ secrets.GITHUB_TOKEN }} 55 | 56 | - name: Build and push image 57 | uses: docker/build-push-action@v6 58 | with: 59 | context: ./java 60 | platforms: linux/amd64, linux/arm64 61 | file: ./java/${{ matrix.tag }}/Dockerfile 62 | push: true 63 | tags: ghcr.io/software-noob/pterodactyl-images:java_${{ matrix.tag }} 64 | -------------------------------------------------------------------------------- /.github/workflows/nodejs.yml: -------------------------------------------------------------------------------- 1 | name: build nodejs 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - nodejs/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: nodejs-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | push: 23 | name: "nodejs_${{ matrix.tag }}" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 12 30 | - 14 31 | - 16 32 | - 17 33 | - 18 34 | - 19 35 | - 20 36 | - 21 37 | - 22 38 | 39 | steps: 40 | - name: Git checkout for Github repository workspace 41 | uses: actions/checkout@v4 42 | 43 | - name: Setup QEMU for multiarch builds 44 | uses: docker/setup-qemu-action@v3 45 | 46 | - name: Setup Docker buildx 47 | uses: docker/setup-buildx-action@v3 48 | with: 49 | buildkitd-flags: --debug 50 | 51 | - name: Login to registry 52 | uses: docker/login-action@v3 53 | with: 54 | registry: ghcr.io 55 | username: ${{ github.repository_owner }} 56 | password: ${{ secrets.GITHUB_TOKEN }} 57 | 58 | - name: Build and push image 59 | uses: docker/build-push-action@v6 60 | with: 61 | context: ./nodejs 62 | platforms: linux/amd64, linux/arm64 63 | file: ./nodejs/${{ matrix.tag }}/Dockerfile 64 | push: true 65 | tags: ghcr.io/software-noob/pterodactyl-images:nodejs_${{ matrix.tag }} 66 | -------------------------------------------------------------------------------- /.github/workflows/python.yml: -------------------------------------------------------------------------------- 1 | name: build python 2 | 3 | on: 4 | workflow_dispatch: 5 | schedule: 6 | - cron: "0 17 1,15 * *" # bi-weekly on 1st and 15th calendar day at 17:00 7 | push: 8 | branches: 9 | - main 10 | paths: 11 | - python/** 12 | 13 | permissions: 14 | actions: read 15 | packages: write 16 | 17 | concurrency: 18 | group: python-${{ github.ref }}-1 19 | cancel-in-progress: true 20 | 21 | jobs: 22 | push: 23 | name: "python_${{ matrix.tag }}" 24 | runs-on: ubuntu-latest 25 | strategy: 26 | fail-fast: false 27 | matrix: 28 | tag: 29 | - 2.7 30 | - 3.6 31 | - 3.7 32 | - 3.8 33 | - 3.9 34 | - "3.10" # !WARNING: Tag must be enclosed in quotes or it will be interpreted as 3.1 instead of 3.10 35 | - 3.11 36 | - 3.12 37 | - 3.13-rc 38 | steps: 39 | - name: Git checkout for Github repository workspace 40 | uses: actions/checkout@v4 41 | 42 | - name: Setup QEMU for multiarch builds 43 | uses: docker/setup-qemu-action@v3 44 | 45 | - name: Setup Docker buildx 46 | uses: docker/setup-buildx-action@v3 47 | with: 48 | buildkitd-flags: --debug 49 | 50 | - name: Login to registry 51 | uses: docker/login-action@v3 52 | with: 53 | registry: ghcr.io 54 | username: ${{ github.repository_owner }} 55 | password: ${{ secrets.GITHUB_TOKEN }} 56 | 57 | - name: Build and push image 58 | uses: docker/build-push-action@v6 59 | with: 60 | context: ./python 61 | platforms: linux/amd64,linux/arm64 62 | file: ./python/${{ matrix.tag }}/Dockerfile 63 | push: true 64 | tags: ghcr.io/software-noob/pterodactyl-images:python_${{ matrix.tag }} 65 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Alex (softwarenoob) 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # This repository is not maintained 2 | 3 | I no longer use the specified game panels and thus, do not need these images. Feel free to fork and add your own. Thanks! 4 | 5 | ## Pelican/Pterodactyl/WISP Docker Images 6 | 7 | Docker images that can be used with the Pelican/Pterodactyl/WISP Game Panel. You can request more images by opening a new issue. These are mostly created for myself. 8 | 9 | Additional Pterodactyl images can be found at [Parkervcp](https://github.com/parkervcp/images), [Matthewpi](https://github.com/matthewpi/images) and [Yolks](https://github.com/pterodactyl/yolks) repositories. 10 | 11 | ## How to add image to your egg 12 | 13 | Navigate to `Admin Panel -> Nests -> Select your egg`. Add Docker image URL(s) from the [available list](https://github.com/trenutoo/pterodactyl-images#pterodactylwisp-images) into the Docker Images section. 14 | 15 | ![image](https://user-images.githubusercontent.com/10975908/120903180-56719d80-c64d-11eb-8666-02de8ea80701.png) 16 | 17 | ### Supported Platforms 18 | 19 | | Image | Supported platforms | 20 | | ------------------------------------------------------------------------------------------------------ | ------------------- | 21 | | [Java Amazon Corretto](https://github.com/trenutoo/pterodactyl-images#java-amazon-corretto-amd64arm64) | AMD64, ARM64 | 22 | | [Java Azul Zulu](https://github.com/trenutoo/pterodactyl-images#java-azul-zulu-amd64arm64) | AMD64, ARM64 | 23 | | [Java Dragonwell](https://github.com/trenutoo/pterodactyl-images#java-dragonwell-amd64arm64) | AMD64, ARM64 | 24 | | [Java Eclipse Temurin](https://github.com/trenutoo/pterodactyl-images#java-eclipse-temurin-amd64arm64) | AMD64, ARM64 | 25 | | [Java GraalVM](https://github.com/trenutoo/pterodactyl-images#java-graalvm-amd64arm64) | AMD64, ARM64 | 26 | | [Java Liberica](https://github.com/trenutoo/pterodactyl-images#java-liberica-amd64arm64) | AMD64, ARM64 | 27 | | [Java OpenJ9](https://github.com/trenutoo/pterodactyl-images#java-openj9-amd64) | AMD64 | 28 | | [Java Shenandoah](https://github.com/trenutoo/pterodactyl-images#java-shenandoah-amd64arm64) | AMD64, ARM64 | 29 | | [Node.js](https://github.com/trenutoo/pterodactyl-images#nodejs-amd64arm64) | AMD64, ARM64 | 30 | | [Python](https://github.com/trenutoo/pterodactyl-images#python-amd64arm64) | AMD64, ARM64 | 31 | | [Sourcemod](https://github.com/trenutoo/pterodactyl-images#sourcemod-amd64) | AMD64 | 32 | 33 | ### Java Amazon Corretto [AMD64/ARM64] 34 | 35 | - [Java 8 Amazon Corretto](https://github.com/trenutoo/pterodactyl-images/tree/main/java-corretto/8) 36 | - `ghcr.io/trenutoo/pterodactyl-images:java_8_corretto` 37 | - [Java 11 Amazon Corretto](https://github.com/trenutoo/pterodactyl-images/tree/main/java-corretto/11) 38 | - `ghcr.io/trenutoo/pterodactyl-images:java_11_corretto` 39 | - [Java 17 Amazon Corretto](https://github.com/trenutoo/pterodactyl-images/tree/main/java-corretto/17) 40 | - `ghcr.io/trenutoo/pterodactyl-images:java_17_corretto` 41 | - [Java 19 Amazon Corretto](https://github.com/trenutoo/pterodactyl-images/tree/main/java-corretto/19) 42 | - `ghcr.io/trenutoo/pterodactyl-images:java_19_corretto` 43 | - [Java 20 Amazon Corretto](https://github.com/trenutoo/pterodactyl-images/tree/main/java-corretto/20) 44 | - `ghcr.io/trenutoo/pterodactyl-images:java_20_corretto` 45 | - [Java 21 Amazon Corretto](https://github.com/trenutoo/pterodactyl-images/tree/main/java-corretto/21) 46 | - `ghcr.io/trenutoo/pterodactyl-images:java_21_corretto` 47 | 48 | ### Java Azul Zulu [AMD64/ARM64] 49 | 50 | - [Java 8 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/8) 51 | - `ghcr.io/trenutoo/pterodactyl-images:java_8_zulu` 52 | - [Java 11 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/11) 53 | - `ghcr.io/trenutoo/pterodactyl-images:java_11_zulu` 54 | - [Java 16 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/16) 55 | - `ghcr.io/trenutoo/pterodactyl-images:java_16_zulu` 56 | - [Java 17 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/17) 57 | - `ghcr.io/trenutoo/pterodactyl-images:java_17_zulu` 58 | - [Java 18 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/18) 59 | - `ghcr.io/trenutoo/pterodactyl-images:java_18_zulu` 60 | - [Java 19 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/19) 61 | - `ghcr.io/trenutoo/pterodactyl-images:java_19_zulu` 62 | - [Java 20 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/20) 63 | - `ghcr.io/trenutoo/pterodactyl-images:java_20_zulu` 64 | - [Java 21 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/21) 65 | - `ghcr.io/trenutoo/pterodactyl-images:java_21_zulu` 66 | - [Java 22 Zulu](https://github.com/trenutoo/pterodactyl-images/tree/main/java-zulu/22) 67 | - `ghcr.io/trenutoo/pterodactyl-images:java_22_zulu` 68 | 69 | ### Java Dragonwell [AMD64/ARM64] 70 | 71 | - [Java 8 Dragonwell](https://github.com/trenutoo/pterodactyl-images/tree/main/java-dragonwell/8) 72 | - `ghcr.io/trenutoo/pterodactyl-images:java_8_dragonwell` 73 | - [Java 11 Dragonwell](https://github.com/trenutoo/pterodactyl-images/tree/main/java-dragonwell/11) 74 | - `ghcr.io/trenutoo/pterodactyl-images:java_11_dragonwell` 75 | - [Java 17 Dragonwell](https://github.com/trenutoo/pterodactyl-images/tree/main/java-dragonwell/17) 76 | - `ghcr.io/trenutoo/pterodactyl-images:java_17_dragonwell` 77 | - [Java 21 Dragonwell](https://github.com/trenutoo/pterodactyl-images/tree/main/java-dragonwell/21) 78 | - `ghcr.io/trenutoo/pterodactyl-images:java_21_dragonwell` 79 | 80 | ### Java Eclipse Temurin [AMD64/ARM64] 81 | 82 | - [Java 8](https://github.com/trenutoo/pterodactyl-images/tree/main/java/8) 83 | - `ghcr.io/trenutoo/pterodactyl-images:java_8` 84 | - [Java 11](https://github.com/trenutoo/pterodactyl-images/tree/main/java/11) 85 | - `ghcr.io/trenutoo/pterodactyl-images:java_11` 86 | - [Java 16](https://github.com/trenutoo/pterodactyl-images/tree/main/java/16) 87 | - `ghcr.io/trenutoo/pterodactyl-images:java_16` 88 | - [Java 17](https://github.com/trenutoo/pterodactyl-images/tree/main/java/17) 89 | - `ghcr.io/trenutoo/pterodactyl-images:java_17` 90 | - [Java 18](https://github.com/trenutoo/pterodactyl-images/tree/main/java/18) 91 | - `ghcr.io/trenutoo/pterodactyl-images:java_18` 92 | - [Java 19](https://github.com/trenutoo/pterodactyl-images/tree/main/java/19) 93 | - `ghcr.io/trenutoo/pterodactyl-images:java_19` 94 | - [Java 20](https://github.com/trenutoo/pterodactyl-images/tree/main/java/20) 95 | - `ghcr.io/trenutoo/pterodactyl-images:java_20` 96 | - [Java 21](https://github.com/trenutoo/pterodactyl-images/tree/main/java/21) 97 | - `ghcr.io/trenutoo/pterodactyl-images:java_21` 98 | - [Java 22](https://github.com/trenutoo/pterodactyl-images/tree/main/java/22) 99 | - `ghcr.io/trenutoo/pterodactyl-images:java_22` 100 | 101 | ### Java GraalVM [AMD64/ARM64] 102 | 103 | **NOTE**: Java 8 is AMD64 only due to lack of support from upstream 104 | 105 | - [Java 8 GraalVM-CE](https://github.com/trenutoo/pterodactyl-images/tree/main/java-graalvm/8) 106 | - `ghcr.io/trenutoo/pterodactyl-images:java_8_graalvm` 107 | - [Java 11 GraalVM JDK](https://github.com/trenutoo/pterodactyl-images/tree/main/java-graalvm/11) 108 | - `ghcr.io/trenutoo/pterodactyl-images:java_11_graalvm` 109 | - [Java 17 GraalVM JDK](https://github.com/trenutoo/pterodactyl-images/tree/main/java-graalvm/17) 110 | - `ghcr.io/trenutoo/pterodactyl-images:java_17_graalvm` 111 | - [Java 21 GraalVM JDK](https://github.com/trenutoo/pterodactyl-images/tree/main/java-graalvm/21) 112 | - `ghcr.io/trenutoo/pterodactyl-images:java_21_graalvm` 113 | - [Java 22 GraalVM JDK](https://github.com/trenutoo/pterodactyl-images/tree/main/java-graalvm/22) 114 | - `ghcr.io/trenutoo/pterodactyl-images:java_22_graalvm` 115 | 116 | ### Java Liberica [AMD64/ARM64] 117 | 118 | - [Java 8 Liberica](https://github.com/trenutoo/pterodactyl-images/tree/main/java-liberica/8) 119 | - `ghcr.io/trenutoo/pterodactyl-images:java_8_liberica` 120 | - [Java 11 Liberica](https://github.com/trenutoo/pterodactyl-images/tree/main/java-liberica/11) 121 | - `ghcr.io/trenutoo/pterodactyl-images:java_11_liberica` 122 | - [Java 17 Liberica](https://github.com/trenutoo/pterodactyl-images/tree/main/java-liberica/17) 123 | - `ghcr.io/trenutoo/pterodactyl-images:java_17_liberica` 124 | - [Java 21 Liberica](https://github.com/trenutoo/pterodactyl-images/tree/main/java-liberica/21) 125 | - `ghcr.io/trenutoo/pterodactyl-images:java_21_liberica` 126 | - [Java 22 Liberica](https://github.com/trenutoo/pterodactyl-images/tree/main/java-liberica/22) 127 | - `ghcr.io/trenutoo/pterodactyl-images:java_22_liberica` 128 | 129 | ### Java OpenJ9 [AMD64/ARM64] 130 | 131 | - [Java 8 OpenJ9](https://github.com/trenutoo/pterodactyl-images/tree/main/java-openj9/8) 132 | - `ghcr.io/trenutoo/pterodactyl-images:java_8_openj9` 133 | - [Java 11 OpenJ9](https://github.com/trenutoo/pterodactyl-images/tree/main/java-openj9/11) 134 | - `ghcr.io/trenutoo/pterodactyl-images:java_11_openj9` 135 | - [Java 16 OpenJ9](https://github.com/trenutoo/pterodactyl-images/tree/main/java-openj9/16) 136 | - `ghcr.io/trenutoo/pterodactyl-images:java_16_openj9` 137 | - [Java 17 OpenJ9](https://github.com/trenutoo/pterodactyl-images/tree/main/java-openj9/17) 138 | - `ghcr.io/trenutoo/pterodactyl-images:java_17_openj9` 139 | - [Java 18 OpenJ9](https://github.com/trenutoo/pterodactyl-images/tree/main/java-openj9/18) 140 | - `ghcr.io/trenutoo/pterodactyl-images:java_18_openj9` 141 | - [Java 20 OpenJ9](https://github.com/trenutoo/pterodactyl-images/tree/main/java-openj9/20) 142 | - `ghcr.io/trenutoo/pterodactyl-images:java_20_openj9` 143 | - [Java 21 OpenJ9](https://github.com/trenutoo/pterodactyl-images/tree/main/java-openj9/21) 144 | - `ghcr.io/trenutoo/pterodactyl-images:java_21_openj9` 145 | 146 | ### Java Shipilev Experimental [AMD64/ARM64] 147 | 148 | These are [shipilev experimental builds.](https://builds.shipilev.net/) If you're looking for Shenandoah GC, it is also by default shipped with at least Azul, Corretto and Temurin images starting with Java 11. 149 | 150 | - [Java 8 Shenandoah](https://github.com/trenutoo/pterodactyl-images/tree/main/java-shenandoah/8) 151 | - `ghcr.io/trenutoo/pterodactyl-images:java_8_shenandoah` 152 | - [Java 11 Shenandoah](https://github.com/trenutoo/pterodactyl-images/tree/main/java-shenandoah/11) 153 | - `ghcr.io/trenutoo/pterodactyl-images:java_11_shenandoah` 154 | - [Java 17 Shenandoah](https://github.com/trenutoo/pterodactyl-images/tree/main/java-shenandoah/17) 155 | - `ghcr.io/trenutoo/pterodactyl-images:java_17_shenandoah` 156 | - [Java 21 Shenandoah](https://github.com/trenutoo/pterodactyl-images/tree/main/java-shenandoah/21) 157 | - `ghcr.io/trenutoo/pterodactyl-images:java_21_shenandoah` 158 | 159 | ### Node.js [AMD64/ARM64] 160 | 161 | - [Nodejs 12](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/12) 162 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_12` 163 | - [Nodejs 14](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/14) 164 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_14` 165 | - [Nodejs 15](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/15) 166 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_15` 167 | - [Nodejs 16](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/16) 168 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_16` 169 | - [Nodejs 17](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/17) 170 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_17` 171 | - [Nodejs 18](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/18) 172 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_18` 173 | - [Nodejs 19](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/19) 174 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_19` 175 | - [Nodejs 20](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/20) 176 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_20` 177 | - [Nodejs 21](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/21) 178 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_21` 179 | - [Nodejs 22](https://github.com/trenutoo/pterodactyl-images/tree/main/nodejs/22) 180 | - `ghcr.io/trenutoo/pterodactyl-images:nodejs_22` 181 | 182 | ### Python [AMD64/ARM64] 183 | 184 | - [Python 2.7](https://github.com/trenutoo/pterodactyl-images/tree/main/python/2.7) 185 | - `ghcr.io/trenutoo/pterodactyl-images:python_2.7` 186 | - [Python 3.6](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.6) 187 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.6` 188 | - [Python 3.7](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.7) 189 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.7` 190 | - [Python 3.8](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.8) 191 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.8` 192 | - [Python 3.9](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.9) 193 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.9` 194 | - [Python 3.10](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.10) 195 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.10` 196 | - [Python 3.11](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.11) 197 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.11` 198 | - [Python 3.12](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.12) 199 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.12` 200 | - [Python 3.13-rc](https://github.com/trenutoo/pterodactyl-images/tree/main/python/3.13-rc) 201 | - `ghcr.io/trenutoo/pterodactyl-images:python_3.13-rc` 202 | 203 | ## Game specific 204 | 205 | ### Sourcemod [AMD64] 206 | 207 | - [Source with sourcemod](https://github.com/trenutoo/pterodactyl-images/tree/main/games/source-sourcemod) 208 | - `ghcr.io/trenutoo/pterodactyl-images:games_source-sourcemod` 209 | 210 | Optionally installs and updates SourceMod/Metamod on each server startup. Requires adding egg environment variable `SOURCEMOD`. 211 | 212 | ![image](https://user-images.githubusercontent.com/10975908/159126935-2e3f2883-3b89-4395-b28d-ab23dad0e5f8.png) 213 | 214 | Custom versions can be set with the use of `SM_VERSION` and `MM_VERSION` variables. Invalid versions will default to the latest stable version. Default path is set to csgo and can be overridden with `INSTALL_PATH` egg environment variable. 215 | -------------------------------------------------------------------------------- /games/source-sourcemod/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ubuntu:20.04 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | # Install Dependencies 9 | RUN dpkg --add-architecture i386 \ 10 | && apt-get update \ 11 | && apt-get upgrade -y \ 12 | && apt-get install -y --no-install-recommends ca-certificates tar curl locales gcc g++ lib32gcc1 libgcc1 libcurl4-gnutls-dev:i386 libssl1.1:i386 libcurl4:i386 libtinfo5 libtinfo5:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 iproute2 gdb libsdl1.2debian libfontconfig telnet net-tools netcat tzdata locales \ 13 | && apt-get clean \ 14 | && rm -rf /var/lib/apt/lists/* \ 15 | && useradd -m -d /home/container container \ 16 | && locale-gen en_US.UTF-8 17 | 18 | ENV LC_ALL=en_US.UTF-8 19 | ENV LANG=en_US.UTF-8 20 | ENV LANGUAGE=en_US.UTF-8 21 | 22 | USER container 23 | ENV HOME /home/container 24 | WORKDIR /home/container 25 | 26 | # Github workflow build context is ./games 27 | COPY ./source-sourcemod/entrypoint.sh /entrypoint.sh 28 | CMD [ "/bin/bash", "/entrypoint.sh" ] 29 | -------------------------------------------------------------------------------- /games/source-sourcemod/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Terminal Colors variables are not used, but only here for easier reference. 5 | BOLD_WHITE='\033[1;37m' 6 | GREEN='\033[0;32m' 7 | RED='\033[0;31m' 8 | YELLOW='\033[0;33m' 9 | RESET_COLOR='\033[0m' 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Available Egg Variables 16 | 17 | ################################################################################################################### 18 | # SRCDS_APPID - Steam App ID of the game server (required) (ex: 740) # 19 | # SRCDS_BETAID - Steam App Beta ID of the game server (optional) (ex: 123456) # 20 | # SRCDS_BETAPASS - Steam App Beta Password of the game server (optional) (ex: password) # 21 | # SOURCEMOD - Whether to install and update sourcemod/metamod on each startup (optional) (ex: 1, true, false, 0) # 22 | # SM_VERSION - Sourcemod version to install (optional) (ex: 1.11) (default: latest) # 23 | # MM_VERSION - Metamod version to install (optional) (ex: 1.11) (default: latest) # 24 | # INSTALL_PATH - Path to install sourcemod/metamod to (optional) (ex: csgo) (default: csgo) # 25 | ################################################################################################################### 26 | 27 | SOURCEMOD_LATEST="https://sourcemod.net/latest.php?os=linux&version=1.11" 28 | METAMOD_LATEST="https://sourcemm.net/latest.php?os=linux&version=1.11" 29 | 30 | print() { 31 | echo -e "$1" 32 | } 33 | 34 | print_bold_white() { 35 | echo -e "\033[1;37m$1\033[0m" 36 | } 37 | 38 | print_yellow() { 39 | echo -e "\033[0;33m$1\033[0m" 40 | } 41 | 42 | print_red() { 43 | echo -e "\033[0;31m$1\033[0m" 44 | } 45 | 46 | print_green() { 47 | echo -e "\033[0;32m$1\033[0m" 48 | } 49 | 50 | is_valid_url() { 51 | local URL="$1" 52 | curl --output /dev/null --silent --head --fail "$URL" 53 | return $? 54 | } 55 | 56 | download_default_stable() { 57 | print_bold_white "Defaulting to and downloading the latest stable SourceMod 1.11 and MetaMod 1.11 releases." 58 | curl --location --output sourcemod.tar.gz "$SOURCEMOD_LATEST" --output metamod.tar.gz "$METAMOD_LATEST" 59 | } 60 | 61 | # Auto detect the game install path by looking for the most common game folders. Default to csgo if none are found or provided by the user. 62 | INSTALL_PATH="${INSTALL_PATH:-csgo}" 63 | 64 | detect_install_path() { 65 | SUPPORTED_GAMES=("csgo" "tf" "css" "dod" "cstrike" "left4dead" "left4dead2" "contagion" "alienswarm" "orangebox" "orangebox_valve" "sdk2013" "original" "darkmessiah" "bloodygoodtime" "eye" "blade" "insurgency" "pvkii" "mcv" "hl2mp" "ship") 66 | 67 | for i in "${SUPPORTED_GAMES[@]}"; do 68 | if [[ -d /home/container/"${i}" ]]; then 69 | INSTALL_PATH="${i}" 70 | fi 71 | done 72 | print_bold_white "Current detected game install folder is: ${INSTALL_PATH}" 73 | } 74 | 75 | # Update Server 76 | if [[ -n ${SRCDS_APPID} ]]; then 77 | if [[ -n ${SRCDS_BETAID} ]]; then 78 | if [[ -n ${SRCDS_BETAPASS} ]]; then 79 | ./steamcmd/steamcmd.sh +force_install_dir /home/container +login anonymous +app_update "${SRCDS_APPID}" -beta "${SRCDS_BETAID}" -betapassword "${SRCDS_BETAPASS}" +quit 80 | else 81 | ./steamcmd/steamcmd.sh +force_install_dir /home/container +login anonymous +app_update "${SRCDS_APPID}" -beta "${SRCDS_BETAID}" +quit 82 | fi 83 | else 84 | ./steamcmd/steamcmd.sh +force_install_dir /home/container +login anonymous +app_update "${SRCDS_APPID}" +quit 85 | fi 86 | fi 87 | 88 | # TODO - support specific versions, such as 1.10 6351 89 | # TODO fix this mess of nested if statements in this whole script. It's not clear and hard to maintain. 90 | 91 | # Install SourceMod/Metamod when egg variable SOURCEMOD is 1 or true. Otherwise, skip the whole step and act as normal server. 92 | if [[ "${SOURCEMOD}" = 1 || "${SOURCEMOD}" == "true" ]]; then 93 | mkdir -p /home/container/"${INSTALL_PATH}"/tmpfiles 94 | cd /home/container/"${INSTALL_PATH}"/tmpfiles || exit 1 95 | 96 | print_yellow "SourceMod variable is set to 1 or true. Installing SourceMod/Metamod..." 97 | detect_install_path 98 | # Should custom versions be provided, check that they are valid. If not, use latest stable version. 99 | if [[ -n "${SM_VERSION}" ]]; then 100 | SOURCEMOD_SCRAPE=$(curl https://sm.alliedmods.net/smdrop/"${SM_VERSION}"/sourcemod-latest-linux -sS) 101 | SOURCEMOD_URL="https://sm.alliedmods.net/smdrop/${SM_VERSION}/${SOURCEMOD_SCRAPE}" 102 | 103 | # scrape the latest version of metamod for the specified sourcemod version and set it as METAMOD_URL 104 | if [[ -n "${MM_VERSION}" ]]; then 105 | METAMOD_SCRAPE=$(curl https://mms.alliedmods.net/mmsdrop/"${MM_VERSION}"/mmsource-latest-linux -sS) 106 | METAMOD_URL="https://mms.alliedmods.net/mmsdrop/${MM_VERSION}/${METAMOD_SCRAPE}" 107 | fi 108 | fi 109 | 110 | if [[ -z ${SOURCEMOD_URL} ]]; then 111 | download_default_stable 112 | else 113 | if is_valid_url "${SOURCEMOD_URL}"; then 114 | if is_valid_url "${METAMOD_URL}"; then 115 | curl --location --output sourcemod.tar.gz "${SOURCEMOD_URL}" --output metamod.tar.gz "${METAMOD_URL}" 116 | else 117 | print_red "The specified Metamod version: ${MM_VERSION} is not valid." 118 | download_default_stable 119 | fi 120 | else 121 | print_red "The specified SourceMod version: ${SM_VERSION} is not valid." 122 | download_default_stable 123 | fi 124 | fi 125 | 126 | # Extract SourceMod and Metamod 127 | print_bold_white "Extracting MetaMod files" 128 | tar -xf metamod.tar.gz --directory /home/container/"${INSTALL_PATH}" 129 | if [[ ! -f /home/container/${INSTALL_PATH}/cfg/sourcemod/sourcemod.cfg ]]; then 130 | print_bold_white "Existing sourcemod.cfg not found. Extracting all SourceMod files." 131 | tar -xf sourcemod.tar.gz --directory /home/container/"${INSTALL_PATH}" 132 | else 133 | print_bold_white "Existing sourcemod.cfg found. Extracting only the required files for an update\n" 134 | tar -xf sourcemod.tar.gz 135 | cp -R addons/sourcemod/{bin,extensions,gamedata,translations} ../addons/sourcemod/ 136 | fi 137 | rm -rf "/home/container/${INSTALL_PATH}/tmpfiles" 138 | print_green "SourceMod and Metamod has been installed!\n" 139 | else 140 | print_yellow "SOURCEMOD variable is set to false or 0. Skipping SourceMod and MetaMod installation..." 141 | 142 | if [[ -d /home/container/${INSTALL_PATH}/addons ]]; then 143 | print_yellow "Existing SourceMod install folder detected." 144 | print_yellow "Renaming the folder /home/container/${INSTALL_PATH}/addons and ${INSTALL_PATH}/cfg/sourcemod to backup and disable it.\n" 145 | mv "/home/container/${INSTALL_PATH}/addons" "/home/container/${INSTALL_PATH}/addons_disabled_$(date +%Y-%m-%d-%H:%M)" 146 | mkdir -p "/home/container/${INSTALL_PATH}/cfg_disabled" 147 | mv "/home/container/${INSTALL_PATH}/cfg/sourcemod" "/home/container/${INSTALL_PATH}/cfg_disabled/sourcemod_disabled_$(date +%Y-%m-%d-%H:%M)" 148 | fi 149 | fi 150 | 151 | cd /home/container || exit 1 152 | 153 | # Replace Startup Variables 154 | # shellcheck disable=SC2086 155 | MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')") 156 | 157 | # Display the parsed startup string we're going to execute. 158 | print_yellow "[Startup Command]: ${BOLD_WHITE} ${MODIFIED_STARTUP}\n" 159 | 160 | # Run the Server 161 | # shellcheck disable=SC2086 162 | eval ${MODIFIED_STARTUP} 163 | -------------------------------------------------------------------------------- /java-corretto/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM amazoncorretto:11 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN yum upgrade -y \ 8 | && yum install -y curl ca-certificates openssl git tar sqlite fontconfig freetype libstdc++.so.6 freetype-devel lsof build-essential tzdata iproute \ 9 | git gcc gcc-c++ automake make libtool \ 10 | && yum clean all \ 11 | && rm -rf /var/cache/yum \ 12 | && useradd -m -d /home/container container 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-corretto/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM amazoncorretto:17 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN yum upgrade -y \ 8 | && yum install -y curl ca-certificates openssl git tar sqlite fontconfig freetype libstdc++.so.6 freetype-devel lsof build-essential tzdata iproute \ 9 | git gcc gcc-c++ automake make libtool \ 10 | && yum clean all \ 11 | && rm -rf /var/cache/yum \ 12 | && useradd -m -d /home/container container 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-corretto/19/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM amazoncorretto:19 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN yum upgrade -y \ 8 | && yum install -y curl ca-certificates openssl git tar sqlite fontconfig freetype libstdc++.so.6 freetype-devel lsof build-essential tzdata iproute \ 9 | git gcc gcc-c++ automake make libtool \ 10 | && yum clean all \ 11 | && rm -rf /var/cache/yum \ 12 | && useradd -m -d /home/container container 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-corretto/20/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM amazoncorretto:20 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN yum upgrade -y \ 8 | && yum install -y curl ca-certificates openssl git tar sqlite fontconfig freetype libstdc++.so.6 freetype-devel lsof build-essential tzdata iproute \ 9 | git gcc gcc-c++ automake make libtool \ 10 | && yum clean all \ 11 | && rm -rf /var/cache/yum \ 12 | && useradd -m -d /home/container container 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-corretto/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM amazoncorretto:21 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN yum upgrade -y \ 8 | && yum install -y curl ca-certificates openssl git tar sqlite fontconfig freetype libstdc++.so.6 freetype-devel lsof build-essential tzdata iproute \ 9 | git gcc gcc-c++ automake make libtool \ 10 | && yum clean all \ 11 | && rm -rf /var/cache/yum \ 12 | && useradd -m -d /home/container container 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-corretto/8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM amazoncorretto:8 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN yum upgrade -y \ 8 | && yum install -y curl ca-certificates openssl git tar sqlite fontconfig freetype libstdc++.so.6 freetype-devel lsof build-essential tzdata iproute \ 9 | git gcc gcc-c++ automake make libtool \ 10 | && yum clean all \ 11 | && rm -rf /var/cache/yum \ 12 | && useradd -m -d /home/container container 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-corretto/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | YELLOW='\033[0;33m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print Current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(eval echo "$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g')") 18 | echo -e "${YELLOW}[Startup Command]: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | exec ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /java-dragonwell/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alibabadragonwell/dragonwell:11-ubuntu 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-dragonwell/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alibabadragonwell/dragonwell:17-ubuntu 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-dragonwell/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alibabadragonwell/dragonwell:21-ubuntu 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-dragonwell/8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alibabadragonwell/dragonwell:8-ubuntu 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-dragonwell/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print Current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /java-graalvm/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ghcr.io/graalvm/jdk:ol8-java11 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN microdnf update \ 8 | && microdnf install -y curl ca-certificates openssl git tar sqlite fontconfig tzdata iproute gcc gcc-c++ freetype libstdc++ lsof glibc-locale-source glibc-langpack-en \ 9 | && microdnf clean all \ 10 | && adduser --home-dir /home/container container 11 | 12 | ENV LC_ALL=en_US.UTF-8 13 | ENV LANG=en_US.UTF-8 14 | ENV LANGUAGE=en_US.UTF-8 15 | 16 | USER container 17 | ENV USER=container HOME=/home/container 18 | WORKDIR /home/container 19 | 20 | COPY ./entrypoint.sh /entrypoint.sh 21 | CMD [ "/bin/bash", "/entrypoint.sh" ] 22 | -------------------------------------------------------------------------------- /java-graalvm/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ghcr.io/graalvm/jdk-community:17-ol8 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN microdnf update \ 8 | && microdnf install -y curl ca-certificates openssl git tar sqlite fontconfig tzdata iproute gcc gcc-c++ freetype libstdc++ lsof glibc-locale-source glibc-langpack-en \ 9 | && microdnf clean all \ 10 | && adduser --home-dir /home/container container 11 | 12 | ENV LC_ALL=en_US.UTF-8 13 | ENV LANG=en_US.UTF-8 14 | ENV LANGUAGE=en_US.UTF-8 15 | 16 | USER container 17 | ENV USER=container HOME=/home/container 18 | WORKDIR /home/container 19 | 20 | COPY ./entrypoint.sh /entrypoint.sh 21 | CMD [ "/bin/bash", "/entrypoint.sh" ] 22 | -------------------------------------------------------------------------------- /java-graalvm/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ghcr.io/graalvm/jdk-community:21-ol8 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN microdnf update \ 8 | && microdnf install -y curl ca-certificates openssl git tar sqlite fontconfig tzdata iproute gcc gcc-c++ freetype libstdc++ lsof glibc-locale-source glibc-langpack-en \ 9 | && microdnf clean all \ 10 | && adduser --home-dir /home/container container 11 | 12 | ENV LC_ALL=en_US.UTF-8 13 | ENV LANG=en_US.UTF-8 14 | ENV LANGUAGE=en_US.UTF-8 15 | 16 | USER container 17 | ENV USER=container HOME=/home/container 18 | WORKDIR /home/container 19 | 20 | COPY ./entrypoint.sh /entrypoint.sh 21 | CMD [ "/bin/bash", "/entrypoint.sh" ] 22 | -------------------------------------------------------------------------------- /java-graalvm/22/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ghcr.io/graalvm/jdk-community:22-ol8 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN microdnf update \ 8 | && microdnf install -y curl ca-certificates openssl git tar sqlite fontconfig tzdata iproute gcc gcc-c++ freetype libstdc++ lsof glibc-locale-source glibc-langpack-en \ 9 | && microdnf clean all \ 10 | && adduser --home-dir /home/container container 11 | 12 | ENV LC_ALL=en_US.UTF-8 13 | ENV LANG=en_US.UTF-8 14 | ENV LANGUAGE=en_US.UTF-8 15 | 16 | USER container 17 | ENV USER=container HOME=/home/container 18 | WORKDIR /home/container 19 | 20 | COPY ./entrypoint.sh /entrypoint.sh 21 | CMD [ "/bin/bash", "/entrypoint.sh" ] 22 | -------------------------------------------------------------------------------- /java-graalvm/8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ghcr.io/graalvm/graalvm-ce:java8 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN microdnf update \ 8 | && microdnf install -y curl ca-certificates openssl git tar sqlite fontconfig tzdata iproute gcc gcc-c++ freetype libstdc++ lsof glibc-locale-source glibc-langpack-en \ 9 | && microdnf clean all \ 10 | && adduser --home-dir /home/container container 11 | 12 | ENV LC_ALL=en_US.UTF-8 13 | ENV LANG=en_US.UTF-8 14 | ENV LANGUAGE=en_US.UTF-8 15 | 16 | USER container 17 | ENV USER=container HOME=/home/container 18 | WORKDIR /home/container 19 | 20 | COPY ./entrypoint.sh /entrypoint.sh 21 | CMD [ "/bin/bash", "/entrypoint.sh" ] 22 | -------------------------------------------------------------------------------- /java-graalvm/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print Current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /java-liberica/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM bellsoft/liberica-openjdk-debian:11 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-liberica/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM bellsoft/liberica-openjdk-debian:17 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-liberica/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM bellsoft/liberica-openjdk-debian:21 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-liberica/22/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM bellsoft/liberica-openjdk-debian:22 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-liberica/8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM bellsoft/liberica-openjdk-debian:8 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-liberica/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print the current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /java-openj9/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ibm-semeru-runtimes:open-11-jdk 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-openj9/16/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ibm-semeru-runtimes:open-16-jdk 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-openj9/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ibm-semeru-runtimes:open-17-jdk 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-openj9/18/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ibm-semeru-runtimes:open-18-jdk 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-openj9/20/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ibm-semeru-runtimes:open-20-jdk 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-openj9/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ibm-semeru-runtimes:open-21-jdk 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-openj9/8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ibm-semeru-runtimes:open-8-jdk 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-openj9/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container ||exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print Current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /java-shenandoah/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM shipilev/openjdk:11 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-shenandoah/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM shipilev/openjdk:17 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-shenandoah/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM shipilev/openjdk:21 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-shenandoah/8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM shipilev/openjdk:8 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java-shenandoah/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print Current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /java-zulu/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:11 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/16/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:16 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:17 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/18/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:18 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/19/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:19 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/20/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:20 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:21 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/22/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:22 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM azul/zulu-openjdk:8 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | ENV DEBIAN_FRONTEND noninteractive 8 | 9 | RUN apt-get update \ 10 | && apt-get -y install --no-install-recommends ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils fontconfig libfreetype6 libstdc++6 lsof build-essential locales \ 11 | && apt-get clean \ 12 | && rm -rf /var/lib/apt/lists/* \ 13 | && useradd -m -d /home/container container \ 14 | && locale-gen en_US.UTF-8 15 | 16 | ENV LC_ALL=en_US.UTF-8 17 | ENV LANG=en_US.UTF-8 18 | ENV LANGUAGE=en_US.UTF-8 19 | 20 | USER container 21 | ENV USER=container HOME=/home/container 22 | WORKDIR /home/container 23 | 24 | COPY ./entrypoint.sh /entrypoint.sh 25 | CMD [ "/bin/bash", "/entrypoint.sh" ] 26 | -------------------------------------------------------------------------------- /java-zulu/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print Current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /java/11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:11-focal 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/16/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:16-focal 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:17-focal 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/18/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:18-focal 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/19/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:19-focal 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/20/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:20-jammy 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:21-jammy 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/22/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM eclipse-temurin:22-jammy 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update -y \ 8 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /java/8/Dockerfile: -------------------------------------------------------------------------------- 1 | #! version must be pinned to older version for Forge support. @see https://github.com/MultiMC/Launcher/issues/4470#issuecomment-1025114255 and https://github.com/McModLauncher/modlauncher/issues/91 2 | FROM eclipse-temurin:8u312-b07-jdk-focal 3 | 4 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 5 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 6 | LABEL org.opencontainers.image.licenses="MIT" 7 | 8 | RUN apt-get update -y \ 9 | && apt-get install -y --no-install-recommends curl ca-certificates openssl git tar sqlite3 fontconfig libfreetype6 libstdc++6 lsof build-essential tzdata iproute2 locales \ 10 | && apt-get clean \ 11 | && rm -rf /var/lib/apt/lists/* \ 12 | && useradd -m -d /home/container container \ 13 | && locale-gen en_US.UTF-8 14 | 15 | ENV LC_ALL=en_US.UTF-8 16 | ENV LANG=en_US.UTF-8 17 | ENV LANGUAGE=en_US.UTF-8 18 | 19 | USER container 20 | ENV USER=container HOME=/home/container 21 | WORKDIR /home/container 22 | 23 | COPY ./entrypoint.sh /entrypoint.sh 24 | CMD [ "/bin/bash", "/entrypoint.sh" ] 25 | -------------------------------------------------------------------------------- /java/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Print Current Java Version 9 | java -version 10 | 11 | # Set environment variable that holds the Internal Docker IP 12 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 13 | export INTERNAL_IP 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /nodejs/12/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:12-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && npm -g install npm@latest \ 10 | && apt-get clean \ 11 | && rm -rf /var/lib/apt/lists/* \ 12 | && useradd -m -d /home/container container \ 13 | && locale-gen en_US.UTF-8 14 | 15 | ENV LC_ALL=en_US.UTF-8 16 | ENV LANG=en_US.UTF-8 17 | ENV LANGUAGE=en_US.UTF-8 18 | 19 | USER container 20 | ENV USER=container HOME=/home/container 21 | WORKDIR /home/container 22 | 23 | COPY ./entrypoint.sh /entrypoint.sh 24 | CMD [ "/bin/bash", "/entrypoint.sh" ] 25 | -------------------------------------------------------------------------------- /nodejs/14/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:14-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && npm -g install npm@latest \ 10 | && apt-get clean \ 11 | && rm -rf /var/lib/apt/lists/* \ 12 | && useradd -m -d /home/container container \ 13 | && locale-gen en_US.UTF-8 14 | 15 | ENV LC_ALL=en_US.UTF-8 16 | ENV LANG=en_US.UTF-8 17 | ENV LANGUAGE=en_US.UTF-8 18 | 19 | USER container 20 | ENV USER=container HOME=/home/container 21 | WORKDIR /home/container 22 | 23 | COPY ./entrypoint.sh /entrypoint.sh 24 | CMD [ "/bin/bash", "/entrypoint.sh" ] 25 | -------------------------------------------------------------------------------- /nodejs/15/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:15-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && npm -g install npm@latest \ 10 | && apt-get clean \ 11 | && rm -rf /var/lib/apt/lists/* \ 12 | && useradd -m -d /home/container container \ 13 | && locale-gen en_US.UTF-8 14 | 15 | ENV LC_ALL=en_US.UTF-8 16 | ENV LANG=en_US.UTF-8 17 | ENV LANGUAGE=en_US.UTF-8 18 | 19 | USER container 20 | ENV USER=container HOME=/home/container 21 | WORKDIR /home/container 22 | 23 | COPY ./entrypoint.sh /entrypoint.sh 24 | CMD [ "/bin/bash", "/entrypoint.sh" ] 25 | -------------------------------------------------------------------------------- /nodejs/16/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:16-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /nodejs/17/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:17-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /nodejs/18/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:18-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /nodejs/19/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:19-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && useradd -m -d /home/container container \ 12 | && locale-gen en_US.UTF-8 13 | 14 | ENV LC_ALL=en_US.UTF-8 15 | ENV LANG=en_US.UTF-8 16 | ENV LANGUAGE=en_US.UTF-8 17 | 18 | USER container 19 | ENV USER=container HOME=/home/container 20 | WORKDIR /home/container 21 | 22 | COPY ./entrypoint.sh /entrypoint.sh 23 | CMD [ "/bin/bash", "/entrypoint.sh" ] 24 | -------------------------------------------------------------------------------- /nodejs/20/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:20-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && npm -g install npm@latest \ 10 | && apt-get clean \ 11 | && rm -rf /var/lib/apt/lists/* \ 12 | && useradd -m -d /home/container container \ 13 | && locale-gen en_US.UTF-8 14 | 15 | ENV LC_ALL=en_US.UTF-8 16 | ENV LANG=en_US.UTF-8 17 | ENV LANGUAGE=en_US.UTF-8 18 | 19 | USER container 20 | ENV USER=container HOME=/home/container 21 | WORKDIR /home/container 22 | 23 | COPY ./entrypoint.sh /entrypoint.sh 24 | CMD [ "/bin/bash", "/entrypoint.sh" ] 25 | -------------------------------------------------------------------------------- /nodejs/21/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:21-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && npm -g install npm@latest \ 10 | && apt-get clean \ 11 | && rm -rf /var/lib/apt/lists/* \ 12 | && useradd -m -d /home/container container \ 13 | && locale-gen en_US.UTF-8 14 | 15 | ENV LC_ALL=en_US.UTF-8 16 | ENV LANG=en_US.UTF-8 17 | ENV LANGUAGE=en_US.UTF-8 18 | 19 | USER container 20 | ENV USER=container HOME=/home/container 21 | WORKDIR /home/container 22 | 23 | COPY ./entrypoint.sh /entrypoint.sh 24 | CMD [ "/bin/bash", "/entrypoint.sh" ] 25 | -------------------------------------------------------------------------------- /nodejs/22/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM node:22-bullseye-slim 2 | 3 | LABEL author="Softwarenoob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends curl ffmpeg iproute2 git sqlite3 python3 tzdata ca-certificates dnsutils build-essential locales \ 9 | && npm -g install npm@latest \ 10 | && apt-get clean \ 11 | && rm -rf /var/lib/apt/lists/* \ 12 | && useradd -m -d /home/container container \ 13 | && locale-gen en_US.UTF-8 14 | 15 | ENV LC_ALL=en_US.UTF-8 16 | ENV LANG=en_US.UTF-8 17 | ENV LANGUAGE=en_US.UTF-8 18 | 19 | USER container 20 | ENV USER=container HOME=/home/container 21 | WORKDIR /home/container 22 | 23 | COPY ./entrypoint.sh /entrypoint.sh 24 | CMD [ "/bin/bash", "/entrypoint.sh" ] 25 | -------------------------------------------------------------------------------- /nodejs/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Set environment variable that holds the Internal Docker IP 9 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 10 | export INTERNAL_IP 11 | 12 | # Print Node.js Version 13 | node -v 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | -------------------------------------------------------------------------------- /python/2.7/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:2.7-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.10/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.10-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.11/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.11-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.12/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.12-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.13-rc/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.13-rc-bullseye 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.6/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.6-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.7/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.7-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.8-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/3.9/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3.9-slim 2 | 3 | LABEL author="Software-noob" maintainer="admin@softwarenoob.com" 4 | LABEL org.opencontainers.image.source="https://github.com/Software-Noob/pterodactyl-images" 5 | LABEL org.opencontainers.image.licenses="MIT" 6 | 7 | RUN apt-get update \ 8 | && apt-get -y install --no-install-recommends git gcc g++ ca-certificates dnsutils curl iproute2 ffmpeg procps locales \ 9 | && apt-get clean \ 10 | && rm -rf /var/lib/apt/lists/* \ 11 | && locale-gen en_US.UTF-8 12 | 13 | ENV LC_ALL=en_US.UTF-8 14 | ENV LANG=en_US.UTF-8 15 | ENV LANGUAGE=en_US.UTF-8 16 | 17 | USER container 18 | ENV USER=container HOME=/home/container 19 | WORKDIR /home/container 20 | 21 | COPY ./entrypoint.sh /entrypoint.sh 22 | CMD [ "/bin/bash", "/entrypoint.sh" ] 23 | -------------------------------------------------------------------------------- /python/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | cd /home/container || exit 1 3 | 4 | # Configure colors 5 | CYAN='\033[0;36m' 6 | RESET_COLOR='\033[0m' 7 | 8 | # Set environment variable that holds the Internal Docker IP 9 | INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}') 10 | export INTERNAL_IP 11 | 12 | #Print the Python version 13 | python --version 14 | 15 | # Replace Startup Variables 16 | # shellcheck disable=SC2086 17 | MODIFIED_STARTUP=$(echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g') 18 | echo -e "${CYAN}STARTUP /home/container: ${MODIFIED_STARTUP} ${RESET_COLOR}" 19 | 20 | # Run the Server 21 | # shellcheck disable=SC2086 22 | eval ${MODIFIED_STARTUP} 23 | --------------------------------------------------------------------------------