Prepare for rootful docker
This commit is contained in:
parent
d6b098ab74
commit
d9274e9ed3
5 changed files with 7 additions and 18 deletions
3
APKBUILD
3
APKBUILD
|
@ -8,12 +8,11 @@ url="https://pterodactyl.io/"
|
|||
license="MIT"
|
||||
optdepends="podman docker" # Install either podman or docker
|
||||
makedepends="go"
|
||||
install="$pkgname.post-install $pkgname.post-deinstall"
|
||||
options="!check"
|
||||
|
||||
package() {
|
||||
DESTDIR="$pkgdir" make install
|
||||
local compose_path=$(find $pkgdir -name pterodactyl-panel.sh -exec dirname {} \; | sed "s|$pkgdir||")
|
||||
sed -i "s|%VERSION%|$pkgver|" "${pkgdir}${compose_path}/pterodactyl-panel.sh"
|
||||
chown -R 1337:1337 "${pkgdir}${compose_path}"
|
||||
chown -R root:root "${pkgdir}${compose_path}"
|
||||
}
|
||||
|
|
|
@ -6,7 +6,6 @@ supervisor="supervise-daemon"
|
|||
|
||||
command="/usr/share/pterodactyl-panel/pterodactyl-panel.sh"
|
||||
command_args="start $(ip a | grep "state UP" -A2 | grep inet | awk '{$1=$1};1 {split($2,a,"/"); print a[1]}')"
|
||||
command_user="pterodactyl"
|
||||
|
||||
depend() {
|
||||
need net
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
deluser pterodactyl 2>/dev/null
|
|
@ -1,6 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
addgroup -S -g 1337 pterodactyl 2>/dev/null
|
||||
adduser -S -h /home/pterodactyl -D -u 1337 -s /bin/bash -G pterodactyl pterodactyl 2>/dev/null
|
||||
|
||||
exit 0
|
|
@ -2,14 +2,14 @@
|
|||
|
||||
start() {
|
||||
mkdir database var nginx certs logs || true
|
||||
podman run --rm --network=host -d --name "pterodactyl-db" -v ./database:/var/lib/mysql -e MYSQL_DATABASE="panel" -e MYSQL_USER="pterodactyl" -e MYSQL_PASSWORD="%MYSQL_PASSWORD%" -e MYSQL_ROOT_PASSWORD="%MYSQL_ROOT_PASSWORD%" --userns=keep-id:uid=999,gid=999 docker.io/mariadb:10.5 --default-authentication-plugin=mysql_native_password
|
||||
podman run --rm --network=host -d --name "pterodactyl-cache" docker.io/redis:alpine
|
||||
podman run --rm --network=host -d --name "pterodactyl-panel" -v ./var:/app/var -v ./nginx:/etc/nginx/http.d -v ./certs:/etc/letsencrypt -v ./logs:/app/storage/logs -e DB_PASSWORD="%MYSQL_PASSWORD%" -e APP_ENV="production" -e APP_ENVIRONMENT_ONLY="false" -e CACHE_DRIVER="redis" -e SESSION_DRIVER="redis" -e QUEUE_DRIVER="redis" -e REDIS_HOST="$1" -e DB_HOST="$1" -e DB_PORT="3306" -e TRUSTED_PROXIES="*" -e APP_TIMEZONE="%APP_TIMEZONE%" -e APP_SERVICE_AUTHOR="mail@example.com" ghcr.io/pterodactyl/panel:v%VERSION%
|
||||
docker run --rm --network=host -d --name "pterodactyl-db" -v ./database:/var/lib/mysql -e MYSQL_DATABASE="panel" -e MYSQL_USER="pterodactyl" -e MYSQL_PASSWORD="%MYSQL_PASSWORD%" -e MYSQL_ROOT_PASSWORD="%MYSQL_ROOT_PASSWORD%" docker.io/mariadb:10.5 --default-authentication-plugin=mysql_native_password
|
||||
docker run --rm --network=host -d --name "pterodactyl-cache" docker.io/redis:alpine
|
||||
docker run --rm --network=host -d --name "pterodactyl-panel" -v ./var:/app/var -v ./nginx:/etc/nginx/http.d -v ./certs:/etc/letsencrypt -v ./logs:/app/storage/logs -e DB_PASSWORD="%MYSQL_PASSWORD%" -e APP_ENV="production" -e APP_ENVIRONMENT_ONLY="false" -e CACHE_DRIVER="redis" -e SESSION_DRIVER="redis" -e QUEUE_DRIVER="redis" -e REDIS_HOST="$1" -e DB_HOST="$1" -e DB_PORT="3306" -e TRUSTED_PROXIES="*" -e APP_TIMEZONE="%APP_TIMEZONE%" -e APP_SERVICE_AUTHOR="mail@example.com" ghcr.io/pterodactyl/panel:v%VERSION%
|
||||
}
|
||||
|
||||
stop() {
|
||||
podman container stop pterodactyl-db
|
||||
podman container stop pterodactyl-cache
|
||||
podman container stop pterodactyl-panel
|
||||
docker container stop pterodactyl-db
|
||||
docker container stop pterodactyl-cache
|
||||
docker container stop pterodactyl-panel
|
||||
}
|
||||
$1 $2
|
||||
|
|
Loading…
Reference in a new issue