Compare commits
1 Commits
remove-num
...
truck-sim
Author | SHA1 | Date | |
---|---|---|---|
![]() |
ea76034350 |
1
.gitattributes
vendored
1
.gitattributes
vendored
@@ -1 +0,0 @@
|
||||
* text eol=lf
|
6
.github/workflows/apps.yml
vendored
6
.github/workflows/apps.yml
vendored
@@ -32,12 +32,12 @@ jobs:
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./apps/${{ matrix.app }}
|
||||
file: ./apps/${{ matrix.app }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/apps:${{ matrix.app }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/apps:{0}', matrix.app) || '' }}
|
||||
ghcr.io/pelican-eggs/apps:${{ matrix.app }}
|
||||
ghcr.io/parkervcp/apps:${{ matrix.app }}
|
||||
|
6
.github/workflows/base.yml
vendored
6
.github/workflows/base.yml
vendored
@@ -30,12 +30,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./oses/${{ matrix.oses }}
|
||||
file: ./oses/${{ matrix.oses }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:${{ matrix.oses }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:{0}', matrix.oses) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:${{ matrix.oses }}
|
||||
ghcr.io/parkervcp/yolks:${{ matrix.oses }}
|
||||
|
10
.github/workflows/bot.yml
vendored
10
.github/workflows/bot.yml
vendored
@@ -41,7 +41,7 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./bot/${{ matrix.tag }}
|
||||
file: ./bot/${{ matrix.tag }}/Dockerfile
|
||||
@@ -50,8 +50,8 @@ jobs:
|
||||
cache-to: type=local,dest=/tmp/.buildx-cache-new
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:bot_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:bot_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:bot_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:bot_${{ matrix.tag }}
|
||||
- name: Move cache
|
||||
run: |
|
||||
rm -rf /tmp/.buildx-cache
|
||||
@@ -76,11 +76,11 @@ jobs:
|
||||
# registry: ghcr.io
|
||||
# username: ${{ github.repository_owner }}
|
||||
# password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
# - uses: docker/build-push-action@v6
|
||||
# - uses: docker/build-push-action@v5
|
||||
# with:
|
||||
# context: ./bot/${{ matrix.tag }}
|
||||
# file: ./bot/${{ matrix.tag }}/Dockerfile
|
||||
# platforms: linux/amd64
|
||||
# push: true
|
||||
# tags: |
|
||||
# ${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:bot_{0}', matrix.tag) || '' }}
|
||||
# ghcr.io/parkervcp/yolks:bot_${{ matrix.tag }}
|
||||
|
78
.github/workflows/box64.yml
vendored
78
.github/workflows/box64.yml
vendored
@@ -1,39 +1,39 @@
|
||||
name: build box64
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "0 0 * * 1"
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- box64/**
|
||||
jobs:
|
||||
push:
|
||||
name: "yolks:${{ matrix.tag }}"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
tag:
|
||||
- box64
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: docker/setup-qemu-action@v3
|
||||
- uses: docker/setup-buildx-action@v3
|
||||
with:
|
||||
buildkitd-flags: --debug
|
||||
- uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: ./box64
|
||||
file: ./${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:{0}', matrix.tag) || '' }}
|
||||
name: build box64
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "0 0 * * 1"
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- box64/**
|
||||
jobs:
|
||||
push:
|
||||
name: "yolks:${{ matrix.tag }}"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
tag:
|
||||
- box64
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: docker/setup-qemu-action@v3
|
||||
- uses: docker/setup-buildx-action@v3
|
||||
with:
|
||||
buildkitd-flags: --debug
|
||||
- uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./box64
|
||||
file: ./${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/pelican-eggs/yolks:${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:${{ matrix.tag }}
|
||||
|
6
.github/workflows/bun.yml
vendored
6
.github/workflows/bun.yml
vendored
@@ -29,12 +29,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./bun
|
||||
file: ./bun/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:bun_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:bun_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:bun_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:bun_${{ matrix.tag }}
|
||||
|
6
.github/workflows/cassandra.yml
vendored
6
.github/workflows/cassandra.yml
vendored
@@ -28,12 +28,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./cassandra
|
||||
file: ./cassandra/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:cassandra_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:cassandra_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:cassandra_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:cassandra_${{ matrix.tag }}
|
||||
|
88
.github/workflows/dart.yml
vendored
88
.github/workflows/dart.yml
vendored
@@ -1,44 +1,44 @@
|
||||
name: build dart
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "0 0 * * 1"
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- dart/**
|
||||
jobs:
|
||||
push:
|
||||
name: "yolks:dart_${{ matrix.tag }}"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
tag:
|
||||
- '2.17'
|
||||
- '2.18'
|
||||
- '2.19'
|
||||
- '3.3'
|
||||
- 'stable'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
# Setup QEMU for ARM64 Build
|
||||
- uses: docker/setup-qemu-action@v3
|
||||
- uses: docker/setup-buildx-action@v3
|
||||
with:
|
||||
buildkitd-flags: --debug
|
||||
- uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: ./dart
|
||||
file: ./dart/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:dart_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:dart_{0}', matrix.tag) || '' }}
|
||||
name: build dart
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "0 0 * * 1"
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- dart/**
|
||||
jobs:
|
||||
push:
|
||||
name: "yolks:dart_${{ matrix.tag }}"
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
tag:
|
||||
- '2.17'
|
||||
- '2.18'
|
||||
- '2.19'
|
||||
- '3.3'
|
||||
- 'stable'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
# Setup QEMU for ARM64 Build
|
||||
- uses: docker/setup-qemu-action@v3
|
||||
- uses: docker/setup-buildx-action@v3
|
||||
with:
|
||||
buildkitd-flags: --debug
|
||||
- uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./dart
|
||||
file: ./dart/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/pelican-eggs/yolks:dart_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:dart_${{ matrix.tag }}
|
||||
|
7
.github/workflows/dotnet.yml
vendored
7
.github/workflows/dotnet.yml
vendored
@@ -22,7 +22,6 @@ jobs:
|
||||
- 6
|
||||
- 7
|
||||
- 8
|
||||
- 9
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
# Setup QEMU for ARM64 Build
|
||||
@@ -35,12 +34,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./dotnet
|
||||
file: ./dotnet/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:dotnet_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:dotnet_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:dotnet_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:dotnet_${{ matrix.tag }}
|
||||
|
6
.github/workflows/elixir.yml
vendored
6
.github/workflows/elixir.yml
vendored
@@ -32,12 +32,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./elixir
|
||||
file: ./elixir/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:elixir_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:elixir_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:elixir_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:elixir_${{ matrix.tag }}
|
||||
|
6
.github/workflows/erlang.yml
vendored
6
.github/workflows/erlang.yml
vendored
@@ -31,12 +31,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./erlang
|
||||
file: ./erlang/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:erlang_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:erlang_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:erlang_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:erlang_${{ matrix.tag }}
|
||||
|
13
.github/workflows/games.yml
vendored
13
.github/workflows/games.yml
vendored
@@ -20,7 +20,6 @@ jobs:
|
||||
- arma3
|
||||
- dayz
|
||||
- mohaa
|
||||
- rust
|
||||
- samp
|
||||
- source
|
||||
- valheim
|
||||
@@ -36,15 +35,15 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./games/${{ matrix.game }}
|
||||
file: ./games/${{ matrix.game }}/Dockerfile
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/games:${{ matrix.game }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/games:{0}', matrix.game) || '' }}
|
||||
ghcr.io/pelican-eggs/games:${{ matrix.game }}
|
||||
ghcr.io/parkervcp/games:${{ matrix.game }}
|
||||
pushAll:
|
||||
name: "games_All:${{ matrix.game }}"
|
||||
runs-on: ubuntu-latest
|
||||
@@ -68,12 +67,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./games/${{ matrix.game }}
|
||||
file: ./games/${{ matrix.game }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/games:${{ matrix.game }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/games:{0}', matrix.game) || '' }}
|
||||
ghcr.io/pelican-eggs/games:${{ matrix.game }}
|
||||
ghcr.io/parkervcp/games:${{ matrix.game }}
|
||||
|
7
.github/workflows/go.yml
vendored
7
.github/workflows/go.yml
vendored
@@ -25,7 +25,6 @@ jobs:
|
||||
- '1.20'
|
||||
- '1.21'
|
||||
- '1.22'
|
||||
- '1.23'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: docker/setup-buildx-action@v3
|
||||
@@ -36,12 +35,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./go
|
||||
file: ./go/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:go_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:go_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:go_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:go_${{ matrix.tag }}
|
||||
|
6
.github/workflows/installers.yml
vendored
6
.github/workflows/installers.yml
vendored
@@ -30,12 +30,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./installers
|
||||
file: ./installers/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/installers:${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/installers:{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/installers:${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/installers:${{ matrix.tag }}
|
||||
|
7
.github/workflows/java.yml
vendored
7
.github/workflows/java.yml
vendored
@@ -25,7 +25,6 @@ jobs:
|
||||
- 17
|
||||
- 19
|
||||
- 21
|
||||
- 22
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: docker/setup-qemu-action@v3
|
||||
@@ -37,12 +36,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./java
|
||||
file: ./java/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:java_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:java_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:java_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:java_${{ matrix.tag }}
|
||||
|
8
.github/workflows/mariadb.yml
vendored
8
.github/workflows/mariadb.yml
vendored
@@ -25,8 +25,6 @@ jobs:
|
||||
- '11.2'
|
||||
- '11.3'
|
||||
- '11.4'
|
||||
- '11.5'
|
||||
- '11.6'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: docker/setup-qemu-action@v3
|
||||
@@ -38,12 +36,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./mariadb
|
||||
file: ./mariadb/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:mariadb_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:mariadb_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:mariadb_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:mariadb_${{ matrix.tag }}
|
||||
|
6
.github/workflows/mongodb.yml
vendored
6
.github/workflows/mongodb.yml
vendored
@@ -32,12 +32,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./mongodb
|
||||
file: ./mongodb/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:mongodb_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:mongodb_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:mongodb_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:mongodb_${{ matrix.tag }}
|
||||
|
6
.github/workflows/mono.yml
vendored
6
.github/workflows/mono.yml
vendored
@@ -27,12 +27,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./mono
|
||||
file: ./mono/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:mono_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:mono_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:mono_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:mono_${{ matrix.tag }}
|
||||
|
8
.github/workflows/nodejs.yml
vendored
8
.github/workflows/nodejs.yml
vendored
@@ -24,8 +24,6 @@ jobs:
|
||||
- 19
|
||||
- 20
|
||||
- 21
|
||||
- 22
|
||||
- 23
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
# Setup QEMU for ARM64 Build
|
||||
@@ -38,12 +36,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./nodejs
|
||||
file: ./nodejs/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:nodejs_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:nodejs_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:nodejs_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:nodejs_${{ matrix.tag }}
|
||||
|
6
.github/workflows/postgres.yml
vendored
6
.github/workflows/postgres.yml
vendored
@@ -35,12 +35,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./postgres
|
||||
file: ./postgres/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:postgres_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:postgres_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:postgres_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:postgres_${{ matrix.tag }}
|
||||
|
7
.github/workflows/python.yml
vendored
7
.github/workflows/python.yml
vendored
@@ -23,7 +23,6 @@ jobs:
|
||||
- '3.10'
|
||||
- '3.11'
|
||||
- '3.12'
|
||||
- '3.13'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
# Setup QEMU for ARM64 Build
|
||||
@@ -36,12 +35,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./python
|
||||
file: ./python/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:python_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:python_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:python_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:python_${{ matrix.tag }}
|
||||
|
6
.github/workflows/redis.yml
vendored
6
.github/workflows/redis.yml
vendored
@@ -31,12 +31,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./redis
|
||||
file: ./redis/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:redis_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:redis_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:redis_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:redis_${{ matrix.tag }}
|
||||
|
6
.github/workflows/rust.yml
vendored
6
.github/workflows/rust.yml
vendored
@@ -31,12 +31,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./rust
|
||||
file: ./rust/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:rust_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:rust_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:rust_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:rust_${{ matrix.tag }}
|
||||
|
6
.github/workflows/steamcmd.yml
vendored
6
.github/workflows/steamcmd.yml
vendored
@@ -32,12 +32,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./steamcmd
|
||||
file: ./steamcmd/${{ matrix.distro }}/Dockerfile
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/steamcmd:${{ matrix.distro }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/steamcmd:{0}', matrix.distro) || '' }}
|
||||
ghcr.io/pelican-eggs/steamcmd:${{ matrix.distro }}
|
||||
ghcr.io/parkervcp/steamcmd:${{ matrix.distro }}
|
||||
|
12
.github/workflows/voice.yml
vendored
12
.github/workflows/voice.yml
vendored
@@ -27,15 +27,15 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./voice/${{ matrix.tag }}
|
||||
file: ./voice/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:voice_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:voice_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:voice_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:voice_${{ matrix.tag }}
|
||||
|
||||
|
||||
pushx64_arm64:
|
||||
@@ -59,12 +59,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./voice/${{ matrix.tag }}
|
||||
file: ./voice/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64,linux/arm64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:voice_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:voice_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:voice_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:voice_${{ matrix.tag }}
|
||||
|
10
.github/workflows/wine.yml
vendored
10
.github/workflows/wine.yml
vendored
@@ -16,10 +16,6 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
tag:
|
||||
- "7"
|
||||
- "8"
|
||||
- "9"
|
||||
- "10"
|
||||
- latest
|
||||
- devel
|
||||
- staging
|
||||
@@ -33,12 +29,12 @@ jobs:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- uses: docker/build-push-action@v6
|
||||
- uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: ./wine
|
||||
file: ./wine/${{ matrix.tag }}/Dockerfile
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ghcr.io/${{ github.repository_owner }}/yolks:wine_${{ matrix.tag }}
|
||||
${{ github.repository_owner == 'pelican-eggs' && format('ghcr.io/parkervcp/yolks:wine_{0}', matrix.tag) || '' }}
|
||||
ghcr.io/pelican-eggs/yolks:wine_${{ matrix.tag }}
|
||||
ghcr.io/parkervcp/yolks:wine_${{ matrix.tag }}
|
||||
|
28
README.md
28
README.md
@@ -97,8 +97,6 @@ is tagged correctly.
|
||||
* `ghcr.io/parkervcp/yolks:dotnet_7`
|
||||
* [`dotnet8.0`](/dotnet/8)
|
||||
* `ghcr.io/parkervcp/yolks:dotnet_8`
|
||||
* [`dotnet9.0`](/dotnet/9)
|
||||
* `ghcr.io/parkervcp/yolks:dotnet_9`
|
||||
|
||||
### [Elixir](/elixir)
|
||||
|
||||
@@ -133,11 +131,9 @@ is tagged correctly.
|
||||
* [`minetest`](/games/minetest)
|
||||
* `ghcr.io/parkervcp/games:minetest`
|
||||
* [`mohaa`](games/mohaa)
|
||||
* `ghcr.io/parkervcp/games:mohaa`
|
||||
* `ghcr.io/pterodactyl/games:mohaa`
|
||||
* [`Multi Theft Auto: San Andreas`](games/mta)
|
||||
* `ghcr.io/parkervcp/games:mta`
|
||||
* [`Rust (dedicated server)`](games/rust)
|
||||
* `ghcr.io/parkervcp/games:rust`
|
||||
* `ghcr.io/pterodactyl/games:mta`
|
||||
* [`samp`](/games/samp)
|
||||
* `ghcr.io/parkervcp/games:samp`
|
||||
* [`source`](/games/source)
|
||||
@@ -167,8 +163,6 @@ is tagged correctly.
|
||||
* `ghcr.io/parkervcp/yolks:go_1.21`
|
||||
* [`go1.22`](/go/1.22)
|
||||
* `ghcr.io/parkervcp/yolks:go_1.22`
|
||||
* [`go1.23`](/go/1.23)
|
||||
* `ghcr.io/parkervcp/yolks:go_1.23`
|
||||
|
||||
### [Java](/java)
|
||||
|
||||
@@ -184,8 +178,6 @@ is tagged correctly.
|
||||
* `ghcr.io/parkervcp/yolks:java_19`
|
||||
* [`java21`](/java/21)
|
||||
* `ghcr.io/parkervcp/yolks:java_21`
|
||||
* [`java22`](/java/22)
|
||||
* `ghcr.io/parkervcp/yolks:java_22`
|
||||
|
||||
### [MariaDB](/mariadb)
|
||||
|
||||
@@ -205,10 +197,6 @@ is tagged correctly.
|
||||
* `ghcr.io/parkervcp/yolks:mariadb_11.3`
|
||||
* [`MariaDB 11.4`](/mariadb/11.4)
|
||||
* `ghcr.io/parkervcp/yolks:mariadb_11.4`
|
||||
* [`MariaDB 11.5`](/mariadb/11.5)
|
||||
* `ghcr.io/parkervcp/yolks:mariadb_11.5`
|
||||
* [`MariaDB 11.6`](/mariadb/11.6)
|
||||
* `ghcr.io/parkervcp/yolks:mariadb_11.6`
|
||||
|
||||
### [MongoDB](/mongodb)
|
||||
|
||||
@@ -244,11 +232,7 @@ is tagged correctly.
|
||||
* `ghcr.io/parkervcp/yolks:nodejs_20`
|
||||
* [`node21`](/nodejs/21)
|
||||
* `ghcr.io/parkervcp/yolks:nodejs_21`
|
||||
* [`node22`](/nodejs/22)
|
||||
* `ghcr.io/parkervcp/yolks:nodejs_22`
|
||||
* [`node23`](/nodejs/23)
|
||||
* `ghcr.io/parkervcp/yolks:nodejs_23`
|
||||
|
||||
|
||||
### [PostgreSQL](/postgres)
|
||||
|
||||
* [`Postgres 9`](/postgres/9)
|
||||
@@ -278,8 +262,6 @@ is tagged correctly.
|
||||
* `ghcr.io/parkervcp/yolks:python_3.11`
|
||||
* [`python3.12`](/python/3.12)
|
||||
* `ghcr.io/parkervcp/yolks:python_3.12`
|
||||
* [`python3.13`](/python/3.13)
|
||||
* `ghcr.io/parkervcp/yolks:python_3.13`
|
||||
|
||||
### [Redis](/redis)
|
||||
|
||||
@@ -322,10 +304,6 @@ is tagged correctly.
|
||||
### [Wine](/wine)
|
||||
|
||||
* [`Wine`](/wine)
|
||||
* `ghcr.io/parkervcp/yolks:wine_7`
|
||||
* `ghcr.io/parkervcp/yolks:wine_8`
|
||||
* `ghcr.io/parkervcp/yolks:wine_9`
|
||||
* `ghcr.io/parkervcp/yolks:wine_10`
|
||||
* `ghcr.io/parkervcp/yolks:wine_latest`
|
||||
* `ghcr.io/parkervcp/yolks:wine_devel`
|
||||
* `ghcr.io/parkervcp/yolks:wine_staging`
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
# general packages
|
||||
|
@@ -3,7 +3,7 @@ FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm-slim
|
||||
LABEL org.opencontainers.image.authors="i2007@damw.eu"
|
||||
LABEL version="1.0"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
# Install Dependencies
|
||||
RUN apt update \
|
||||
@@ -14,8 +14,8 @@ RUN apt update \
|
||||
&& useradd -m -d /home/container container
|
||||
#RUN python3 -m pip install requests
|
||||
|
||||
ENV LANG=C.UTF-8
|
||||
ENV LC_ALL=C.UTF-8
|
||||
ENV LANG C.UTF-8
|
||||
ENV LC_ALL C.UTF-8
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm-slim
|
||||
|
||||
LABEL author="QuintenQVD" maintainer="josdekurk@gmail.com"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
## Update base packages
|
||||
RUN apt update \
|
||||
|
@@ -29,10 +29,10 @@ fi
|
||||
# Convert all of the "{{VARIABLE}}" parts of the command into the expected shell
|
||||
# variable format of "${VARIABLE}" before evaluating the string and automatically
|
||||
# replacing the values.
|
||||
PARSED=$(echo "$STARTUP" | sed -e 's/{{/${/g' -e 's/}}/}/g')
|
||||
PARSED=$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g' | eval echo "$(cat -)")
|
||||
|
||||
# Display the command we're running in the output, and then execute it with eval
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m"
|
||||
echo "$PARSED"
|
||||
# Display the command we're running in the output, and then execute it with the env
|
||||
# from the container itself.
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m%s\n" "$PARSED"
|
||||
# shellcheck disable=SC2086
|
||||
eval "$PARSED"
|
||||
exec env ${PARSED}
|
||||
|
@@ -1,18 +1,18 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH dart:2.17
|
||||
|
||||
LABEL author="Alden Bansemer" maintainer="alden@knoban.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install iproute2 git ca-certificates tzdata tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH dart:2.17
|
||||
|
||||
LABEL author="Alden Bansemer" maintainer="alden@knoban.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install iproute2 git ca-certificates tzdata tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -1,18 +1,18 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH dart:2.18
|
||||
|
||||
LABEL author="Alden Bansemer" maintainer="alden@knoban.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install iproute2 git ca-certificates tzdata tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH dart:2.18
|
||||
|
||||
LABEL author="Alden Bansemer" maintainer="alden@knoban.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install iproute2 git ca-certificates tzdata tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -1,18 +1,18 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH dart:2.19
|
||||
|
||||
LABEL author="Alden Bansemer" maintainer="alden@knoban.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install iproute2 git ca-certificates tzdata tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH dart:2.19
|
||||
|
||||
LABEL author="Alden Bansemer" maintainer="alden@knoban.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install iproute2 git ca-certificates tzdata tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
|
@@ -1,25 +1,25 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
&& apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \
|
||||
&& wget https://dot.net/v1/dotnet-install.sh \
|
||||
&& D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/7.0 | grep -i '<h3 id="sdk-7.*">SDK 7.*.*</h3>' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \
|
||||
&& chmod +x dotnet-install.sh \
|
||||
&& ./dotnet-install.sh -i /usr/share -v $D_V \
|
||||
&& ln -s /usr/share/dotnet /usr/bin/dotnet
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
&& apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \
|
||||
&& wget https://dot.net/v1/dotnet-install.sh \
|
||||
&& D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/7.0 | grep -i '<h3 id="sdk-7.*">SDK 7.*.*</h3>' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \
|
||||
&& chmod +x dotnet-install.sh \
|
||||
&& ./dotnet-install.sh -i /usr/share -v $D_V \
|
||||
&& ln -s /usr/share/dotnet /usr/bin/dotnet
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
|
@@ -1,25 +0,0 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ghcr.io/parkervcp/yolks:debian
|
||||
|
||||
LABEL author="Torsten Widmann" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt upgrade -y \
|
||||
&& apt install -y apt-transport-https wget curl iproute2 libgdiplus tini \
|
||||
&& wget https://dot.net/v1/dotnet-install.sh \
|
||||
&& D_V="$(curl -sSL https://dotnet.microsoft.com/en-us/download/dotnet/9.0 | grep -i '<h3 id="sdk-9.*">SDK 9.*.*</h3>' | head -1 | awk -F\" '{print $3}' | awk '{print $2;}' | sed 's/<\/h3>//g')" \
|
||||
&& chmod +x dotnet-install.sh \
|
||||
&& ./dotnet-install.sh -i /usr/share -v $D_V \
|
||||
&& ln -s /usr/share/dotnet /usr/bin/dotnet
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
@@ -1,16 +1,16 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH erlang:25-alpine
|
||||
|
||||
LABEL author="Pascal Zarrad" maintainer="p.zarrad@outlook.de"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apk add --update --no-cache ca-certificates curl git openssl sqlite tar tzdata iproute2 \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./../entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/ash", "/entrypoint.sh" ]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH erlang:25-alpine
|
||||
|
||||
LABEL author="Pascal Zarrad" maintainer="p.zarrad@outlook.de"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apk add --update --no-cache ca-certificates curl git openssl sqlite tar tzdata iproute2 \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./../entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/ash", "/entrypoint.sh" ]
|
||||
|
@@ -1,16 +1,16 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH erlang:26-alpine
|
||||
|
||||
LABEL author="Pascal Zarrad" maintainer="p.zarrad@outlook.de"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apk add --update --no-cache ca-certificates curl git openssl sqlite tar tzdata iproute2 \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./../entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/ash", "/entrypoint.sh" ]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH erlang:26-alpine
|
||||
|
||||
LABEL author="Pascal Zarrad" maintainer="p.zarrad@outlook.de"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apk add --update --no-cache ca-certificates curl git openssl sqlite tar tzdata iproute2 \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./../entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/ash", "/entrypoint.sh" ]
|
||||
|
@@ -16,10 +16,10 @@ erl -noshell -eval 'erlang:display(erlang:system_info(system_version))' -eval 'i
|
||||
# Convert all of the "{{VARIABLE}}" parts of the command into the expected shell
|
||||
# variable format of "${VARIABLE}" before evaluating the string and automatically
|
||||
# replacing the values.
|
||||
PARSED=$(echo "$STARTUP" | sed -e 's/{{/${/g' -e 's/}}/}/g')
|
||||
PARSED=$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g' | eval echo "$(cat -)")
|
||||
|
||||
# Display the command we're running in the output, and then execute it with eval
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m"
|
||||
echo "$PARSED"
|
||||
# Display the command we're running in the output, and then execute it with the env
|
||||
# from the container itself.
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m%s\n" "$PARSED"
|
||||
# shellcheck disable=SC2086
|
||||
eval "$PARSED"
|
||||
exec env ${PARSED}
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH node:16-bookworm
|
||||
|
||||
LABEL author="goover" maintainer="info@goover.de"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
|
||||
@@ -18,7 +18,7 @@ RUN apt update -y \
|
||||
RUN wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb \
|
||||
&& dpkg -i packages-microsoft-prod.deb \
|
||||
&& apt update -y \
|
||||
&& apt install -y dotnet-sdk-6.0 dotnet-sdk-7.0 dotnet-sdk-8.0 libgdiplus
|
||||
&& apt install -y dotnet-sdk-6.0 dotnet-sdk-7.0 libgdiplus
|
||||
|
||||
RUN update-locale lang=en_US.UTF-8 \
|
||||
&& dpkg-reconfigure --frontend noninteractive locales
|
||||
@@ -32,4 +32,4 @@ STOPSIGNAL SIGINT
|
||||
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
CMD ["/entrypoint.sh"]
|
@@ -1,6 +1,6 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH debian:bullseye-slim
|
||||
|
||||
LABEL author="David Wolfe (Red-Thirten)" maintainer="red_thirten@yahoo.com"
|
||||
LABEL author="David Wolfe (Red-Thirten)" maintainer="rehlmgaming@gmail.com"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/parkervcp/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
@@ -54,9 +54,8 @@ function RunSteamCMD { #[Input: int server=0 mod=1 optional_mod=2; int id]
|
||||
|
||||
# Error checking for SteamCMD
|
||||
steamcmdExitCode=${PIPESTATUS[0]}
|
||||
# Catch errors (ignore setlocale, SDL, steamservice, thread priority, and libcurl warnings)
|
||||
loggedErrors=$(grep -i "error\|failed" "${STEAMCMD_LOG}" | grep -iv "setlocal\|SDL\|steamservice\|thread\|libcurl")
|
||||
if [[ -n ${loggedErrors} ]]; then
|
||||
loggedErrors=$(grep -i "error\|failed" "${STEAMCMD_LOG}" | grep -iv "setlocal\|SDL\|steamservice\|thread")
|
||||
if [[ -n ${loggedErrors} ]]; then # Catch errors (ignore setlocale, SDL, steamservice, and thread priority warnings)
|
||||
# Soft errors
|
||||
if [[ -n $(grep -i "Timeout downloading item" "${STEAMCMD_LOG}") ]]; then # Mod download timeout
|
||||
echo -e "\n${YELLOW}[UPDATE]: ${NC}Timeout downloading Steam Workshop mod: \"${CYAN}${modName}${NC}\" (${CYAN}${2}${NC})"
|
||||
@@ -347,12 +346,6 @@ if [[ ${MODS_LOWERCASE} == "1" ]]; then
|
||||
done
|
||||
fi
|
||||
|
||||
# Define the log file path with a timestamp
|
||||
LOG_FILE="/home/container/serverprofile/rpt/arma3server_$(date '+%m_%d_%Y_%H%M%S').rpt"
|
||||
|
||||
# Ensure the logs directory exists
|
||||
mkdir -p /home/container/serverprofile/rpt
|
||||
|
||||
# Clear HC cache, if specified
|
||||
if [[ ${CLEAR_CACHE} == "1" ]]; then
|
||||
echo -e "\n${GREEN}[STARTUP]: ${CYAN}Clearing Headless Client profiles cache...${NC}"
|
||||
@@ -402,11 +395,7 @@ fi
|
||||
# Start the Server
|
||||
echo -e "\n${GREEN}[STARTUP]:${NC} Starting server with the following startup command:"
|
||||
echo -e "${CYAN}${modifiedStartup}${NC}\n"
|
||||
if [[ "$STARTUP_PARAMS" == *"-noLogs"* ]]; then
|
||||
${modifiedStartup}
|
||||
else
|
||||
${modifiedStartup} 2>&1 | tee -a "$LOG_FILE"
|
||||
fi
|
||||
${modifiedStartup}
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\n${RED}PTDL_CONTAINER_ERR: There was an error while attempting to run the start command.${NC}\n"
|
||||
|
@@ -1,8 +1,8 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm-slim
|
||||
FROM --platform=$BUILDPLATFORM debian:bullseye-slim
|
||||
|
||||
LABEL author="David Wolfe (Red-Thirten)" maintainer="red_thirten@yahoo.com"
|
||||
LABEL author="David Wolfe (Red-Thirten)" maintainer="rehlmgaming@gmail.com"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pelican-eggs/yolks"
|
||||
LABEL org.opencontainers.image.source="https://github.com/parkervcp/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
## Update base packages and install dependencies
|
||||
@@ -17,6 +17,7 @@ RUN dpkg --add-architecture i386 \
|
||||
iproute2 \
|
||||
gettext-base \
|
||||
ca-certificates \
|
||||
numactl \
|
||||
libssl-dev \
|
||||
lib32gcc-s1 \
|
||||
libsdl2-2.0-0 \
|
||||
@@ -28,17 +29,11 @@ RUN dpkg --add-architecture i386 \
|
||||
libnss-wrapper \
|
||||
tini
|
||||
|
||||
## install rcon client (bercon)
|
||||
RUN cd /tmp/ \
|
||||
&& curl -sSL https://github.com/WoozyMasta/bercon/releases/download/1.0.0/bercon > bercon \
|
||||
&& mv bercon /usr/local/bin/ \
|
||||
&& chmod +x /usr/local/bin/bercon
|
||||
|
||||
## Configure locale
|
||||
RUN update-locale lang=en_US.UTF-8 \
|
||||
&& dpkg-reconfigure --frontend noninteractive locales
|
||||
|
||||
## Prepare NSS Wrapper for the entrypoint as a workaround for DayZ requiring a valid UID
|
||||
## Prepare NSS Wrapper for the entrypoint as a workaround for Arma 3 requiring a valid UID
|
||||
ENV NSS_WRAPPER_PASSWD=/tmp/passwd NSS_WRAPPER_GROUP=/tmp/group
|
||||
RUN touch ${NSS_WRAPPER_PASSWD} ${NSS_WRAPPER_GROUP} \
|
||||
&& chgrp 0 ${NSS_WRAPPER_PASSWD} ${NSS_WRAPPER_GROUP} \
|
||||
@@ -51,10 +46,9 @@ USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
## Copy over and execute entrypoint.sh via Tini
|
||||
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -1,16 +1,15 @@
|
||||
#!/bin/bash
|
||||
|
||||
## File: DayZ Image - entrypoint.sh
|
||||
## File: Pterodactyl DayZ SA Image - entrypoint.sh
|
||||
## Author: David Wolfe (Red-Thirten)
|
||||
## Contributors: Aussie Server Hosts (https://aussieserverhosts.com/)
|
||||
## Date: 2024/06/05
|
||||
## Date: 2022/11/27
|
||||
## License: MIT License
|
||||
|
||||
## === CONSTANTS ===
|
||||
STEAMCMD_DIR="./steamcmd" # SteamCMD's directory containing steamcmd.sh
|
||||
WORKSHOP_DIR="./Steam/steamapps/workshop" # SteamCMD's directory containing workshop downloads
|
||||
STEAMCMD_LOG="${STEAMCMD_DIR}/steamcmd.log" # Log file for SteamCMD
|
||||
GAME_ID=221100 # SteamCMD ID for the DayZ GAME (not server). Only used for Workshop mod downloads.
|
||||
GAME_ID=221100 # SteamCMD ID for the DayZ SA GAME (not server). Only used for Workshop mod downloads.
|
||||
|
||||
# Color Codes
|
||||
CYAN='\033[0;36m'
|
||||
@@ -46,16 +45,14 @@ function RunSteamCMD { #[Input: int server=0 mod=1; int id]
|
||||
|
||||
# Check if updating server or mod
|
||||
if [[ $1 == 0 ]]; then # Server
|
||||
${STEAMCMD_DIR}/steamcmd.sh +force_install_dir /home/container "+login \"${STEAM_USER}\" \"${STEAM_PASS}\"" +app_update $2 $extraFlags $validateServer +quit | tee -a "${STEAMCMD_LOG}"
|
||||
numactl --physcpubind=+0 ${STEAMCMD_DIR}/steamcmd.sh +force_install_dir /home/container "+login \"${STEAM_USER}\" \"${STEAM_PASS}\"" +app_update $2 $extraFlags $validateServer +quit | tee -a "${STEAMCMD_LOG}"
|
||||
else # Mod
|
||||
${STEAMCMD_DIR}/steamcmd.sh "+login \"${STEAM_USER}\" \"${STEAM_PASS}\"" +workshop_download_item $GAME_ID $2 +quit | tee -a "${STEAMCMD_LOG}"
|
||||
numactl --physcpubind=+0 ${STEAMCMD_DIR}/steamcmd.sh "+login \"${STEAM_USER}\" \"${STEAM_PASS}\"" +workshop_download_item $GAME_ID $2 +quit | tee -a "${STEAMCMD_LOG}"
|
||||
fi
|
||||
|
||||
# Error checking for SteamCMD
|
||||
steamcmdExitCode=${PIPESTATUS[0]}
|
||||
# Catch errors (ignore setlocale, SDL, steamservice, thread priority, and libcurl warnings)
|
||||
loggedErrors=$(grep -i "error\|failed" "${STEAMCMD_LOG}" | grep -iv "setlocal\|SDL\|steamservice\|thread\|libcurl")
|
||||
if [[ -n ${loggedErrors} ]]; then
|
||||
if [[ -n $(grep -i "error\|failed" "${STEAMCMD_LOG}" | grep -iv "setlocal\|SDL\|thread") ]]; then # Catch errors (ignore setlocale, SDL, and thread priority warnings)
|
||||
# Soft errors
|
||||
if [[ -n $(grep -i "Timeout downloading item" "${STEAMCMD_LOG}") ]]; then # Mod download timeout
|
||||
echo -e "\n${YELLOW}[UPDATE]: ${NC}Timeout downloading Steam Workshop mod: \"${CYAN}${modName}${NC}\" (${CYAN}${2}${NC})"
|
||||
@@ -107,8 +104,8 @@ function RunSteamCMD { #[Input: int server=0 mod=1; int id]
|
||||
# Move the downloaded mod to the root directory, and replace existing mod if needed
|
||||
mkdir -p ./@$2
|
||||
rm -rf ./@$2/*
|
||||
mv -f ${WORKSHOP_DIR}/content/$GAME_ID/$2/* ./@$2
|
||||
rm -d ${WORKSHOP_DIR}/content/$GAME_ID/$2
|
||||
mv -f ./Steam/steamapps/workshop/content/$GAME_ID/$2/* ./@$2
|
||||
rm -d ./Steam/steamapps/workshop/content/$GAME_ID/$2
|
||||
# Make the mods contents all lowercase
|
||||
ModsLowercase @$2
|
||||
# Move any .bikey's to the keys directory
|
||||
@@ -241,11 +238,6 @@ if [[ ${UPDATE_SERVER} == 1 ]]; then
|
||||
if [[ -n $latestUpdate ]] && [[ $latestUpdate =~ ^[0-9]+$ ]]; then # Notify last update date, if valid
|
||||
echo -e "\tMod was last updated: ${CYAN}$(date -d @${latestUpdate})${NC}"
|
||||
fi
|
||||
|
||||
# Delete SteamCMD appworkshop cache before running to avoid mod download failures
|
||||
echo -e "\tClearing SteamCMD appworkshop cache..."
|
||||
rm -f ${WORKSHOP_DIR}/appworkshop_$GAME_ID.acf
|
||||
|
||||
echo -e "\tAttempting mod update/download via SteamCMD...\n"
|
||||
RunSteamCMD 1 $modID
|
||||
fi
|
||||
@@ -288,6 +280,6 @@ echo -e "${CYAN}${modifiedStartup}${NC}\n"
|
||||
${modifiedStartup}
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo -e "\n${RED}[STARTUP_ERR]: There was an error while attempting to run the start command.${NC}\n"
|
||||
echo -e "\n${RED}PTDL_CONTAINER_ERR: There was an error while attempting to run the start command.${NC}\n"
|
||||
exit 1
|
||||
fi
|
||||
|
@@ -1,16 +1,16 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ubuntu:22.04
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y curl ca-certificates openssl git tar gnupg2 sqlite3 fontconfig tzdata iproute2 libfreetype6 software-properties-common \
|
||||
&& useradd -d /home/container -m container
|
||||
|
||||
RUN add-apt-repository -y ppa:minetestdevs/stable
|
||||
RUN apt update && apt -y install minetest
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ubuntu:22.04
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y curl ca-certificates openssl git tar gnupg2 sqlite3 fontconfig tzdata iproute2 libfreetype6 software-properties-common \
|
||||
&& useradd -d /home/container -m container
|
||||
|
||||
RUN add-apt-repository -y ppa:minetestdevs/stable
|
||||
RUN apt update && apt -y install minetest
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/bash", "/entrypoint.sh" ]
|
@@ -1,23 +1,23 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ubuntu:20.04
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
## add container user
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
|
||||
## update base packages
|
||||
RUN apt update \
|
||||
&& apt upgrade -y
|
||||
|
||||
## install dependencies
|
||||
RUN apt install -y iproute2 tar libssl1.1 curl git default-libmysqlclient-dev libmysqlclient-dev libreadline-gplv2-dev libncurses5-dev libncursesw5-dev \
|
||||
libtool zip unzip libncurses5 libncursesw5 python3 openssl locales ffmpeg apt-transport-https libc6 binutils xz-utils liblua5.1-0
|
||||
|
||||
## configure locale
|
||||
RUN update-locale lang=en_US.UTF-8 \
|
||||
&& dpkg-reconfigure --frontend noninteractive locales
|
||||
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ubuntu:20.04
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
## add container user
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
|
||||
## update base packages
|
||||
RUN apt update \
|
||||
&& apt upgrade -y
|
||||
|
||||
## install dependencies
|
||||
RUN apt install -y iproute2 tar libssl1.1 curl git default-libmysqlclient-dev libmysqlclient-dev libreadline-gplv2-dev libncurses5-dev libncursesw5-dev \
|
||||
libtool zip unzip libncurses5 libncursesw5 python3 openssl locales ffmpeg apt-transport-https libc6 binutils xz-utils liblua5.1-0
|
||||
|
||||
## configure locale
|
||||
RUN update-locale lang=en_US.UTF-8 \
|
||||
&& dpkg-reconfigure --frontend noninteractive locales
|
||||
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/bash", "/entrypoint.sh" ]
|
@@ -1,41 +0,0 @@
|
||||
FROM node:22-slim
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN dpkg --add-architecture i386 \
|
||||
&& apt update \
|
||||
&& apt upgrade -y
|
||||
|
||||
RUN apt install -y \
|
||||
lib32gcc-s1 \
|
||||
lib32stdc++6 \
|
||||
locales \
|
||||
unzip \
|
||||
curl \
|
||||
iproute2 \
|
||||
tzdata \
|
||||
libgdiplus \
|
||||
libsdl2-2.0-0:i386
|
||||
|
||||
RUN mkdir /wrapper \
|
||||
&& npm install --prefix /wrapper ws
|
||||
|
||||
# Set the locale
|
||||
RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \
|
||||
locale-gen
|
||||
ENV LANG=en_US.UTF-8
|
||||
ENV LANGUAGE=en_US:en
|
||||
ENV LC_ALL=en_US.UTF-8
|
||||
|
||||
## Setup user and working directory
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./entrypoint.sh /entrypoint.sh
|
||||
COPY --chown=container:container ./wrapper.js /wrapper/wrapper.js
|
||||
RUN chmod +x /wrapper/wrapper.js
|
||||
|
||||
CMD [ "/bin/bash", "/entrypoint.sh" ]
|
@@ -1,58 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Wait for the container to fully initialize
|
||||
sleep 1
|
||||
|
||||
# Default the TZ environment variable to UTC.
|
||||
TZ=${TZ:-UTC}
|
||||
export TZ
|
||||
|
||||
# Set environment variable that holds the Internal Docker IP
|
||||
INTERNAL_IP=$(ip route get 1 | awk '{print $(NF-2);exit}')
|
||||
export INTERNAL_IP
|
||||
|
||||
# Switch to the container's working directory
|
||||
cd /home/container || exit 1
|
||||
|
||||
## if auto_update is not set or to 1 update
|
||||
if [ -z ${AUTO_UPDATE} ] || [ "${AUTO_UPDATE}" == "1" ]; then
|
||||
# Allow for the staging branch to also update itself
|
||||
./steamcmd/steamcmd.sh +force_install_dir /home/container +login anonymous +app_update 258550 $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) +quit
|
||||
else
|
||||
echo -e "Not updating game server as auto update was set to 0. Starting Server"
|
||||
fi
|
||||
|
||||
# Replace Startup Variables
|
||||
MODIFIED_STARTUP=$(eval echo -e ${STARTUP} | sed -e 's/{{/${/g' -e 's/}}/}/g')
|
||||
echo ":/home/container$ ${MODIFIED_STARTUP}"
|
||||
|
||||
if [[ "${FRAMEWORK}" == "carbon" ]]; then
|
||||
# Carbon: https://github.com/CarbonCommunity/Carbon
|
||||
echo "Updating Carbon..."
|
||||
curl -sSL "https://github.com/CarbonCommunity/Carbon/releases/download/production_build/Carbon.Linux.Release.tar.gz" | tar zx
|
||||
echo "Done updating Carbon!"
|
||||
|
||||
export DOORSTOP_ENABLED=1
|
||||
export DOORSTOP_TARGET_ASSEMBLY="$(pwd)/carbon/managed/Carbon.Preloader.dll"
|
||||
MODIFIED_STARTUP="LD_PRELOAD=$(pwd)/libdoorstop.so ${MODIFIED_STARTUP}"
|
||||
elif [[ "${FRAMEWORK}" == "oxide-staging" ]]; then
|
||||
echo "updating oxide-staging"
|
||||
curl -sSL -o oxide-staging.zip "https://downloads.oxidemod.com/artifacts/Oxide.Rust/staging/Oxide.Rust-linux.zip"
|
||||
unzip -o -q oxide-staging.zip
|
||||
rm oxide-staging.zip
|
||||
echo "Done updating oxide Staging"
|
||||
elif [[ "$OXIDE" == "1" ]] || [[ "${FRAMEWORK}" == "oxide" ]]; then
|
||||
# Oxide: https://github.com/OxideMod/Oxide.Rust
|
||||
echo "Updating uMod..."
|
||||
curl -sSL "https://github.com/OxideMod/Oxide.Rust/releases/latest/download/Oxide.Rust-linux.zip" > umod.zip
|
||||
unzip -o -q umod.zip
|
||||
rm umod.zip
|
||||
echo "Done updating uMod!"
|
||||
# else Vanilla, do nothing
|
||||
fi
|
||||
|
||||
# Fix for Rust not starting
|
||||
export LD_LIBRARY_PATH=$(pwd)/RustDedicated_Data/Plugins/x86_64:$(pwd)
|
||||
|
||||
# Run the Server
|
||||
/wrapper/wrapper.js "${MODIFIED_STARTUP}"
|
@@ -1,140 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
var startupCmd = "";
|
||||
const fs = require("fs");
|
||||
fs.writeFile("latest.log", "", (err) => {
|
||||
if (err) console.log("Callback error in appendFile:" + err);
|
||||
});
|
||||
|
||||
var args = process.argv.splice(process.execArgv.length + 2);
|
||||
for (var i = 0; i < args.length; i++) {
|
||||
if (i === args.length - 1) {
|
||||
startupCmd += args[i];
|
||||
} else {
|
||||
startupCmd += args[i] + " ";
|
||||
}
|
||||
}
|
||||
|
||||
if (startupCmd.length < 1) {
|
||||
console.log("Error: Please specify a startup command.");
|
||||
process.exit();
|
||||
}
|
||||
|
||||
const seenPercentage = {};
|
||||
|
||||
function filter(data) {
|
||||
const str = data.toString();
|
||||
if (str.startsWith("Loading Prefab Bundle ")) { // Rust seems to spam the same percentage, so filter out any duplicates.
|
||||
const percentage = str.substr("Loading Prefab Bundle ".length);
|
||||
if (seenPercentage[percentage]) return;
|
||||
|
||||
seenPercentage[percentage] = true;
|
||||
}
|
||||
|
||||
console.log(str);
|
||||
}
|
||||
|
||||
var exec = require("child_process").exec;
|
||||
console.log("Starting Rust...");
|
||||
|
||||
var exited = false;
|
||||
const gameProcess = exec(startupCmd);
|
||||
gameProcess.stdout.on('data', filter);
|
||||
gameProcess.stderr.on('data', filter);
|
||||
gameProcess.on('exit', function (code, signal) {
|
||||
exited = true;
|
||||
|
||||
if (code) {
|
||||
console.log("Main game process exited with code " + code);
|
||||
// process.exit(code);
|
||||
}
|
||||
});
|
||||
|
||||
function initialListener(data) {
|
||||
const command = data.toString().trim();
|
||||
if (command === 'quit') {
|
||||
gameProcess.kill('SIGTERM');
|
||||
} else {
|
||||
console.log('Unable to run "' + command + '" due to RCON not being connected yet.');
|
||||
}
|
||||
}
|
||||
process.stdin.resume();
|
||||
process.stdin.setEncoding("utf8");
|
||||
process.stdin.on('data', initialListener);
|
||||
|
||||
process.on('exit', function (code) {
|
||||
if (exited) return;
|
||||
|
||||
console.log("Received request to stop the process, stopping the game...");
|
||||
gameProcess.kill('SIGTERM');
|
||||
});
|
||||
|
||||
var waiting = true;
|
||||
var poll = function () {
|
||||
function createPacket(command) {
|
||||
var packet = {
|
||||
Identifier: -1,
|
||||
Message: command,
|
||||
Name: "WebRcon"
|
||||
};
|
||||
return JSON.stringify(packet);
|
||||
}
|
||||
|
||||
var serverHostname = process.env.RCON_IP ? process.env.RCON_IP : "localhost";
|
||||
var serverPort = process.env.RCON_PORT;
|
||||
var serverPassword = process.env.RCON_PASS;
|
||||
var WebSocket = require("ws");
|
||||
var ws = new WebSocket("ws://" + serverHostname + ":" + serverPort + "/" + serverPassword);
|
||||
|
||||
ws.on("open", function open() {
|
||||
console.log("Connected to RCON. Generating the map now. Please wait until the server status switches to \"Running\".");
|
||||
waiting = false;
|
||||
|
||||
// Hack to fix broken console output
|
||||
ws.send(createPacket('status'));
|
||||
|
||||
process.stdin.removeListener('data', initialListener);
|
||||
gameProcess.stdout.removeListener('data', filter);
|
||||
gameProcess.stderr.removeListener('data', filter);
|
||||
process.stdin.on('data', function (text) {
|
||||
ws.send(createPacket(text));
|
||||
});
|
||||
});
|
||||
|
||||
ws.on("message", function (data, flags) {
|
||||
try {
|
||||
var json = JSON.parse(data);
|
||||
if (json !== undefined) {
|
||||
if (json.Message !== undefined && json.Message.length > 0) {
|
||||
console.log(json.Message);
|
||||
const fs = require("fs");
|
||||
fs.appendFile("latest.log", "\n" + json.Message, (err) => {
|
||||
if (err) console.log("Callback error in appendFile:" + err);
|
||||
});
|
||||
}
|
||||
} else {
|
||||
console.log("Error: Invalid JSON received");
|
||||
}
|
||||
} catch (e) {
|
||||
if (e) {
|
||||
console.log(e);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
ws.on("error", function (err) {
|
||||
waiting = true;
|
||||
console.log("Waiting for RCON to come up...");
|
||||
setTimeout(poll, 5000);
|
||||
});
|
||||
|
||||
ws.on("close", function () {
|
||||
if (!waiting) {
|
||||
console.log("Connection to server closed.");
|
||||
|
||||
exited = true;
|
||||
process.exit();
|
||||
}
|
||||
});
|
||||
}
|
||||
poll();
|
@@ -1,33 +1,27 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm-slim
|
||||
|
||||
LABEL author="QuintenQVD" maintainer="josdekurk@gmail.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y upgrade
|
||||
RUN dpkg --add-architecture i386 \
|
||||
&& apt update \
|
||||
&& apt upgrade -y \
|
||||
&& apt install -y libstdc++6 lib32stdc++6 tar wget curl iproute2 openssl fontconfig dirmngr ca-certificates dnsutils tzdata zip tini \
|
||||
&& apt install -y libtbb12:i386 libtbb-dev:i386 libicu-dev:i386 \
|
||||
&& useradd -d /home/container -m container
|
||||
|
||||
RUN mkdir -p /run/systemd && echo 'docker' > /run/systemd/container
|
||||
RUN rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Temp fix for things that still need libssl1.1 32 bit
|
||||
RUN if [ "$(uname -m)" = "x86_64" ]; then \
|
||||
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_i386.deb && \
|
||||
dpkg -i libssl1.1_1.1.0g-2ubuntu4_i386.deb && \
|
||||
rm libssl1.1_1.1.0g-2ubuntu4_i386.deb; \
|
||||
fi
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH debian:bookworm-slim
|
||||
|
||||
LABEL author="QuintenQVD" maintainer="josdekurk@gmail.com"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y upgrade
|
||||
RUN dpkg --add-architecture i386 \
|
||||
&& apt update \
|
||||
&& apt upgrade -y \
|
||||
&& apt install -y libstdc++6 lib32stdc++6 tar curl iproute2 openssl fontconfig dirmngr ca-certificates dnsutils tzdata zip tini \
|
||||
&& apt install -y libtbb12:i386 libtbb-dev:i386 libicu-dev:i386 \
|
||||
&& useradd -d /home/container -m container
|
||||
|
||||
RUN mkdir -p /run/systemd && echo 'docker' > /run/systemd/container
|
||||
RUN rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -32,65 +32,29 @@ ENV DEBIAN_FRONTEND=noninteractive
|
||||
RUN dpkg --add-architecture i386 \
|
||||
&& apt update \
|
||||
&& apt upgrade -y \
|
||||
&& apt install -y \
|
||||
curl \
|
||||
g++ \
|
||||
gcc \
|
||||
gdb \
|
||||
iproute2 \
|
||||
locales \
|
||||
net-tools \
|
||||
netcat-traditional \
|
||||
tar \
|
||||
telnet \
|
||||
tini \
|
||||
tzdata \
|
||||
wget \
|
||||
lib32gcc-s1 \
|
||||
lib32stdc++6 \
|
||||
lib32tinfo6 \
|
||||
lib32z1 \
|
||||
libcurl3-gnutls:i386 \
|
||||
libcurl4-gnutls-dev:i386 \
|
||||
libcurl4:i386 \
|
||||
libfontconfig1 \
|
||||
libgcc-11-dev \
|
||||
libgcc-12-dev \
|
||||
libncurses5:i386 \
|
||||
libsdl1.2debian \
|
||||
libsdl2-2.0-0:i386 \
|
||||
libssl-dev:i386 \
|
||||
libtinfo6:i386 \
|
||||
&& apt install -y tar curl gcc g++ lib32gcc-s1 libgcc-11-dev libgcc-12-dev libcurl4-gnutls-dev:i386 libssl-dev:i386 libcurl4:i386 lib32tinfo6 libtinfo6:i386 lib32z1 lib32stdc++6 libncurses5:i386 libcurl3-gnutls:i386 libsdl2-2.0-0:i386 iproute2 gdb libsdl1.2debian libfontconfig1 telnet net-tools netcat-traditional tzdata numactl wget tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
# Install rcon
|
||||
## install rcon
|
||||
RUN cd /tmp/ \
|
||||
&& curl -sSL https://github.com/gorcon/rcon-cli/releases/download/v0.10.3/rcon-0.10.3-amd64_linux.tar.gz > rcon.tar.gz \
|
||||
&& tar xvf rcon.tar.gz \
|
||||
&& mv rcon-0.10.3-amd64_linux/rcon /usr/local/bin/
|
||||
|
||||
# Temp fix for things that still need libssl1.1
|
||||
RUN if [ "$(uname -m)" = "x86_64" ]; then \
|
||||
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb && \
|
||||
dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb && \
|
||||
rm libssl1.1_1.1.0g-2ubuntu4_amd64.deb; \
|
||||
fi
|
||||
# Temp fix for things that still need libssl1.1
|
||||
RUN if [ "$(uname -m)" = "x86_64" ]; then \
|
||||
wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.0g-2ubuntu4_amd64.deb && \
|
||||
dpkg -i libssl1.1_1.1.0g-2ubuntu4_amd64.deb && \
|
||||
rm libssl1.1_1.1.0g-2ubuntu4_amd64.deb; \
|
||||
fi
|
||||
|
||||
# Set the locale
|
||||
RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \
|
||||
locale-gen
|
||||
ENV LANG=en_US.UTF-8
|
||||
ENV LANGUAGE=en_US:en
|
||||
ENV LC_ALL=en_US.UTF-8
|
||||
|
||||
# Setup user and working directory
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -52,7 +52,11 @@ fi
|
||||
if [ -z ${AUTO_UPDATE} ] || [ "${AUTO_UPDATE}" == "1" ]; then
|
||||
# Update Source Server
|
||||
if [ ! -z ${SRCDS_APPID} ]; then
|
||||
./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update 1007 +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
if [ "${STEAM_USER}" == "anonymous" ]; then
|
||||
./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
else
|
||||
numactl --physcpubind=+0 ./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
fi
|
||||
else
|
||||
echo -e "No appid set. Starting Server"
|
||||
fi
|
||||
|
@@ -2,7 +2,7 @@ FROM --platform=$TARGETOS/$TARGETARCH ubuntu:22.04
|
||||
|
||||
LABEL author="Daniel Barton" maintainer="danny6167@gmail.com"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
## add container user
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
|
@@ -21,7 +21,7 @@ fi
|
||||
if [ -z ${AUTO_UPDATE} ] || [ "${AUTO_UPDATE}" == "1" ]; then
|
||||
# Update Source Server
|
||||
if [ ! -z ${SRCDS_APPID} ]; then
|
||||
./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update 1007 +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
else
|
||||
echo -e "No appid set. Starting Server"
|
||||
fi
|
||||
|
@@ -1,38 +1,38 @@
|
||||
#
|
||||
# Copyright (c) 2021 Matthew Penner
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
#
|
||||
|
||||
FROM --platform=$TARGETOS/$TARGETARCH golang:1.22-alpine
|
||||
|
||||
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apk add --update --no-cache ca-certificates tzdata \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./../entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/ash", "/entrypoint.sh" ]
|
||||
#
|
||||
# Copyright (c) 2021 Matthew Penner
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
# copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in all
|
||||
# copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
# SOFTWARE.
|
||||
#
|
||||
|
||||
FROM --platform=$TARGETOS/$TARGETARCH golang:1.22-alpine
|
||||
|
||||
LABEL author="Matthew Penner" maintainer="matthew@pterodactyl.io"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apk add --update --no-cache ca-certificates tzdata \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./../entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/ash", "/entrypoint.sh" ]
|
||||
|
@@ -1,12 +0,0 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH golang:1.23-alpine
|
||||
|
||||
|
||||
RUN apk add --update --no-cache ca-certificates tzdata \
|
||||
&& adduser -D -h /home/container container
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ./../entrypoint.sh /entrypoint.sh
|
||||
CMD [ "/bin/ash", "/entrypoint.sh" ]
|
@@ -40,10 +40,10 @@ go version
|
||||
# Convert all of the "{{VARIABLE}}" parts of the command into the expected shell
|
||||
# variable format of "${VARIABLE}" before evaluating the string and automatically
|
||||
# replacing the values.
|
||||
PARSED=$(echo "$STARTUP" | sed -e 's/{{/${/g' -e 's/}}/}/g')
|
||||
PARSED=$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g' | eval echo "$(cat -)")
|
||||
|
||||
# Display the command we're running in the output, and then execute it with eval
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m"
|
||||
echo "$PARSED"
|
||||
# Display the command we're running in the output, and then execute it with the env
|
||||
# from the container itself.
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m%s\n" "$PARSED"
|
||||
# shellcheck disable=SC2086
|
||||
eval "$PARSED"
|
||||
exec env ${PARSED}
|
||||
|
@@ -1,4 +1,4 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:11-jdk-noble
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:11.0.13_8-jdk-focal
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:17-jdk-noble
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:17-jdk-jammy
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
|
@@ -1,4 +1,4 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:19-jdk-focal
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:19-jdk-jammy
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
|
@@ -1,36 +1,36 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:21-jdk-noble
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y \
|
||||
curl \
|
||||
lsof \
|
||||
ca-certificates \
|
||||
openssl \
|
||||
git \
|
||||
tar \
|
||||
sqlite3 \
|
||||
fontconfig \
|
||||
tzdata \
|
||||
iproute2 \
|
||||
libfreetype6 \
|
||||
tini \
|
||||
zip \
|
||||
unzip
|
||||
|
||||
## Setup user and working directory
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:21-jdk-jammy
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y \
|
||||
curl \
|
||||
lsof \
|
||||
ca-certificates \
|
||||
openssl \
|
||||
git \
|
||||
tar \
|
||||
sqlite3 \
|
||||
fontconfig \
|
||||
tzdata \
|
||||
iproute2 \
|
||||
libfreetype6 \
|
||||
tini \
|
||||
zip \
|
||||
unzip
|
||||
|
||||
## Setup user and working directory
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
|
@@ -1,36 +0,0 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:22-jdk-noble
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y \
|
||||
curl \
|
||||
lsof \
|
||||
ca-certificates \
|
||||
openssl \
|
||||
git \
|
||||
tar \
|
||||
sqlite3 \
|
||||
fontconfig \
|
||||
tzdata \
|
||||
iproute2 \
|
||||
libfreetype6 \
|
||||
tini \
|
||||
zip \
|
||||
unzip
|
||||
|
||||
## Setup user and working directory
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
@@ -1,4 +1,4 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:8-jdk-noble
|
||||
FROM --platform=$TARGETOS/$TARGETARCH eclipse-temurin:8u312-b07-jdk-focal
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
|
@@ -40,10 +40,10 @@ java -version
|
||||
# Convert all of the "{{VARIABLE}}" parts of the command into the expected shell
|
||||
# variable format of "${VARIABLE}" before evaluating the string and automatically
|
||||
# replacing the values.
|
||||
PARSED=$(echo "$STARTUP" | sed -e 's/{{/${/g' -e 's/}}/}/g')
|
||||
PARSED=$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g' | eval echo "$(cat -)")
|
||||
|
||||
# Display the command we're running in the output, and then execute it with eval
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m"
|
||||
echo "$PARSED"
|
||||
# Display the command we're running in the output, and then execute it with the env
|
||||
# from the container itself.
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m%s\n" "$PARSED"
|
||||
# shellcheck disable=SC2086
|
||||
eval "$PARSED"
|
||||
eval ${PARSED}
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:10.3
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:10.4
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:10.5
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:10.6
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:10.7
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:11.2
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:11.3
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat \
|
||||
|
@@ -5,10 +5,10 @@ FROM --platform=$TARGETOS/$TARGETARCH mariadb:11.4
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat-traditional \
|
||||
&& apt install -y netcat \
|
||||
&& useradd -d /home/container -m container -s /bin/bash
|
||||
|
||||
USER container
|
||||
|
@@ -1,19 +0,0 @@
|
||||
# -----------------------------------------------------
|
||||
# MariaDB Image for Pterodactyl
|
||||
# -----------------------------------------------------
|
||||
FROM --platform=$TARGETOS/$TARGETARCH mariadb:11.5
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat-traditional \
|
||||
&& useradd -d /home/container -m container -s /bin/bash
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ../entrypoint.sh /entrypoint.sh
|
||||
CMD ["/bin/bash", "/entrypoint.sh"]
|
@@ -1,19 +0,0 @@
|
||||
# -----------------------------------------------------
|
||||
# MariaDB Image for Pterodactyl
|
||||
# -----------------------------------------------------
|
||||
FROM --platform=$TARGETOS/$TARGETARCH mariadb:11.6
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat-traditional \
|
||||
&& useradd -d /home/container -m container -s /bin/bash
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
COPY ../entrypoint.sh /entrypoint.sh
|
||||
CMD ["/bin/bash", "/entrypoint.sh"]
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mongo:4-focal
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat iproute2 \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mongo:5-focal
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat iproute2 \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mongo:6-jammy
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat iproute2 \
|
||||
|
@@ -5,7 +5,7 @@ FROM --platform=$TARGETOS/$TARGETARCH mongo:7-jammy
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN apt update -y \
|
||||
&& apt install -y netcat iproute2 \
|
||||
|
@@ -29,7 +29,11 @@ if [ ! -z "${SRCDS_APPID}" ]; then
|
||||
if [ -z ${AUTO_UPDATE} ] || [ "${AUTO_UPDATE}" == "1" ]; then
|
||||
# Update Source Server
|
||||
if [ ! -z ${SRCDS_APPID} ]; then
|
||||
./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update 1007 +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
if [ "${STEAM_USER}" == "anonymous" ]; then
|
||||
./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
else
|
||||
numactl --physcpubind=+0 ./steamcmd/steamcmd.sh +force_install_dir /home/container +login ${STEAM_USER} ${STEAM_PASS} ${STEAM_AUTH} $( [[ "${WINDOWS_INSTALL}" == "1" ]] && printf %s '+@sSteamCmdForcePlatformType windows' ) +app_update ${SRCDS_APPID} $( [[ -z ${SRCDS_BETAID} ]] || printf %s "-beta ${SRCDS_BETAID}" ) $( [[ -z ${SRCDS_BETAPASS} ]] || printf %s "-betapassword ${SRCDS_BETAPASS}" ) $( [[ -z ${HLDS_GAME} ]] || printf %s "+app_set_config 90 mod ${HLDS_GAME}" ) $( [[ -z ${VALIDATE} ]] || printf %s "validate" ) +quit
|
||||
fi
|
||||
else
|
||||
echo -e "No appid set. Starting Server"
|
||||
fi
|
||||
|
@@ -4,7 +4,7 @@ LABEL author="Torsten Widmann" maintainer="support@goover.de"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y upgrade
|
||||
RUN apt install -y fontconfig dirmngr
|
||||
RUN apt install -y fontconfig dirmngr numactl
|
||||
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
|
||||
RUN sh -c 'echo "deb https://download.mono-project.com/repo/debian stable-buster main" > /etc/apt/sources.list.d/mono-official-stable.list'
|
||||
RUN apt update
|
||||
|
@@ -12,7 +12,7 @@ USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
@@ -12,7 +12,7 @@ USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
|
@@ -6,12 +6,7 @@ RUN apt update \
|
||||
&& apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
RUN npm install npm@10.x.x typescript ts-node @types/node --location=global
|
||||
|
||||
# install pnpm
|
||||
RUN npm install -g corepack
|
||||
RUN corepack enable
|
||||
RUN corepack prepare pnpm@latest --activate
|
||||
RUN npm install npm@9.8.1 typescript ts-node @types/node --location=global
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
|
@@ -8,11 +8,6 @@ RUN apt update \
|
||||
|
||||
RUN npm install npm@9.8.1 typescript ts-node @types/node --location=global
|
||||
|
||||
# install pnpm
|
||||
RUN npm install -g corepack
|
||||
RUN corepack enable
|
||||
RUN corepack prepare pnpm@latest --activate
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
@@ -8,11 +8,6 @@ RUN apt update \
|
||||
|
||||
RUN npm install npm@latest typescript ts-node @types/node --location=global
|
||||
|
||||
# install pnpm
|
||||
RUN npm install -g corepack
|
||||
RUN corepack enable
|
||||
RUN corepack prepare pnpm@latest --activate
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
@@ -6,12 +6,7 @@ RUN apt update \
|
||||
&& apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
RUN npm install npm@10.x.x typescript ts-node @types/node --location=global
|
||||
|
||||
# install pnpm
|
||||
RUN npm install -g corepack
|
||||
RUN corepack enable
|
||||
RUN corepack prepare pnpm@latest --activate
|
||||
RUN npm install npm@latest typescript ts-node @types/node --location=global
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
|
@@ -1,25 +0,0 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH node:22-bookworm-slim
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
RUN npm install npm@latest typescript ts-node @types/node --location=global
|
||||
|
||||
# install pnpm
|
||||
RUN npm install -g corepack
|
||||
RUN corepack enable
|
||||
RUN corepack prepare pnpm@latest --activate
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
@@ -1,25 +0,0 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH node:23-bookworm-slim
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
RUN apt update \
|
||||
&& apt -y install ffmpeg iproute2 git sqlite3 libsqlite3-dev python3 python3-dev ca-certificates dnsutils tzdata zip tar curl build-essential libtool iputils-ping libnss3 tini \
|
||||
&& useradd -m -d /home/container container
|
||||
|
||||
RUN npm install npm@latest typescript ts-node @types/node --location=global
|
||||
|
||||
# install pnpm
|
||||
RUN npm install -g corepack
|
||||
RUN corepack enable
|
||||
RUN corepack prepare pnpm@latest --activate
|
||||
|
||||
USER container
|
||||
ENV USER=container HOME=/home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./../entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
@@ -34,11 +34,11 @@ cd /home/container || exit 1
|
||||
# Convert all of the "{{VARIABLE}}" parts of the command into the expected shell
|
||||
# variable format of "${VARIABLE}" before evaluating the string and automatically
|
||||
# replacing the values.
|
||||
PARSED=$(echo "$STARTUP" | sed -e 's/{{/${/g' -e 's/}}/}/g')
|
||||
PARSED=$(echo "${STARTUP}" | sed -e 's/{{/${/g' -e 's/}}/}/g' | eval echo "$(cat -)")
|
||||
|
||||
# Display the command we're running in the output, and then execute it with eval
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m"
|
||||
echo "$PARSED"
|
||||
# Display the command we're running in the output, and then execute it with the env
|
||||
# from the container itself.
|
||||
printf "\033[1m\033[33mcontainer@pelican~ \033[0m%s\n" "$PARSED"
|
||||
# shellcheck disable=SC2086
|
||||
eval "$PARSED"
|
||||
exec env ${PARSED}
|
||||
|
||||
|
@@ -5,7 +5,7 @@ LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
LABEL org.opencontainers.image.source="https://github.com/pterodactyl/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
|
||||
|
@@ -1,35 +1,31 @@
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ubuntu:24.04
|
||||
FROM --platform=$TARGETOS/$TARGETARCH ubuntu:22.04
|
||||
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"
|
||||
|
||||
LABEL org.opencontainers.image.source="https://github.com/pelican-eggs/yolks"
|
||||
LABEL org.opencontainers.image.licenses=MIT
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
## add container user
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
|
||||
## Add container user
|
||||
RUN useradd -m -d /home/container -s /bin/bash container
|
||||
ENV USER=container HOME=/home/container
|
||||
## update base packages
|
||||
RUN apt update \
|
||||
&& apt upgrade -y
|
||||
|
||||
## Update base packages
|
||||
RUN apt update \
|
||||
&& apt upgrade -y
|
||||
## install dependencies
|
||||
RUN apt install -y gcc g++ libgcc1 libc++-dev gdb libc6 git wget curl tar zip unzip binutils xz-utils liblzo2-2 cabextract iproute2 net-tools netcat telnet libatomic1 libsdl1.2debian libsdl2-2.0-0 \
|
||||
libfontconfig icu-devtools libunwind8 sqlite3 libsqlite3-dev libzip4 locales ffmpeg apt-transport-https init-system-helpers \
|
||||
libcurl3-gnutls liblua5.1-0 libluajit-5.1-2 libsqlite3-0 bzip2 zlib1g libevent-dev libmariadb-dev-compat libmariadb-dev libssl-dev \
|
||||
libfluidsynth-dev libmariadb-dev libicu-dev libssl3 libduktape207 libjsoncpp-dev libleveldb1d libncurses5 libncursesw5 tini
|
||||
|
||||
## Install dependencies
|
||||
RUN apt install -y gcc g++ libgcc1 libc++-dev gdb libc6 git wget curl tar zip unzip binutils xz-utils liblzo2-2 cabextract iproute2 net-tools netcat-openbsd telnet libatomic1 libsdl1.2debian libsdl2-2.0-0 \
|
||||
libfontconfig icu-devtools libunwind8 sqlite3 libsqlite3-dev libzip4 locales ffmpeg apt-transport-https init-system-helpers \
|
||||
libcurl3-gnutls liblua5.1-0 libluajit-5.1-2 libsqlite3-0 bzip2 zlib1g libevent-dev libmariadb-dev-compat libmariadb-dev libssl-dev \
|
||||
libfluidsynth-dev libmariadb-dev libicu-dev libssl3 libduktape207 libjsoncpp-dev libleveldb1d libncurses6 libncursesw6 tini
|
||||
## configure locale
|
||||
RUN update-locale lang=en_US.UTF-8 \
|
||||
&& dpkg-reconfigure --frontend noninteractive locales
|
||||
|
||||
## Configure locale
|
||||
RUN update-locale lang=en_US.UTF-8 \
|
||||
&& dpkg-reconfigure --frontend noninteractive locales
|
||||
WORKDIR /home/container
|
||||
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
STOPSIGNAL SIGINT
|
||||
|
||||
COPY --chown=container:container ./entrypoint.sh /entrypoint.sh
|
||||
RUN chmod +x /entrypoint.sh
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
||||
ENTRYPOINT ["/usr/bin/tini", "-g", "--"]
|
||||
CMD ["/entrypoint.sh"]
|
@@ -11,7 +11,7 @@ RUN adduser -D -h /home/container container
|
||||
RUN apk add --no-cache tini curl iproute2 ca-certificates fontconfig git openssl sqlite tar tzdata
|
||||
|
||||
USER container
|
||||
ENV HOME=/home/container
|
||||
ENV HOME /home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
@@ -11,7 +11,7 @@ RUN adduser -D -h /home/container container
|
||||
RUN apk add --no-cache tini curl iproute2 ca-certificates fontconfig git openssl sqlite tar tzdata
|
||||
|
||||
USER container
|
||||
ENV HOME=/home/container
|
||||
ENV HOME /home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
@@ -11,7 +11,7 @@ RUN adduser -D -h /home/container container
|
||||
RUN apk add --no-cache tini curl iproute2 ca-certificates fontconfig git openssl sqlite tar tzdata
|
||||
|
||||
USER container
|
||||
ENV HOME=/home/container
|
||||
ENV HOME /home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
@@ -11,7 +11,7 @@ RUN adduser -D -h /home/container container
|
||||
RUN apk add --no-cache tini curl iproute2 ca-certificates fontconfig git openssl sqlite tar tzdata
|
||||
|
||||
USER container
|
||||
ENV HOME=/home/container
|
||||
ENV HOME /home/container
|
||||
WORKDIR /home/container
|
||||
|
||||
STOPSIGNAL SIGINT
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user