mirror of
https://github.com/pyrohost/pyrodactyl.git
synced 2026-04-06 04:01:58 +02:00
feat: update docker-compose.yml, and docker file (#78)
This commit is contained in:
13
.github/workflows/docker.yaml
vendored
13
.github/workflows/docker.yaml
vendored
@@ -3,16 +3,17 @@ name: Docker
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
- 1.0-develop
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- develop
|
||||
- 1.0-develop
|
||||
- main
|
||||
release:
|
||||
types:
|
||||
- published
|
||||
|
||||
permissions:
|
||||
packages: write
|
||||
|
||||
jobs:
|
||||
push:
|
||||
name: Push
|
||||
@@ -26,7 +27,7 @@ jobs:
|
||||
id: docker_meta
|
||||
uses: docker/metadata-action@v4
|
||||
with:
|
||||
images: ghcr.io/pterodactyl/panel
|
||||
images: ghcr.io/pyrohost/panel
|
||||
flavor: |
|
||||
latest=false
|
||||
tags: |
|
||||
@@ -46,7 +47,7 @@ jobs:
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Update version
|
||||
if: "github.event_name == 'release' && github.event.action == 'published'"
|
||||
|
||||
13
Dockerfile
13
Dockerfile
@@ -1,12 +1,12 @@
|
||||
# Stage 0:
|
||||
# Build the assets that are needed for the frontend. This build stage is then discarded
|
||||
# since we won't need NodeJS anymore in the future. This Docker image ships a final production
|
||||
# level distribution of Pterodactyl.
|
||||
FROM --platform=$TARGETOS/$TARGETARCH mhart/alpine-node:14
|
||||
# Build the frontend
|
||||
FROM --platform=$TARGETOS/$TARGETARCH node:lts-alpine
|
||||
WORKDIR /app
|
||||
COPY . ./
|
||||
RUN yarn install --frozen-lockfile \
|
||||
&& yarn run build:production
|
||||
RUN apk add --no-cache --update git \
|
||||
&& npm install -g turbo \
|
||||
&& npm ci \
|
||||
&& npm run ship
|
||||
|
||||
# Stage 1:
|
||||
# Build the actual container with all of the needed PHP dependencies that will run the application.
|
||||
@@ -14,6 +14,7 @@ FROM --platform=$TARGETOS/$TARGETARCH php:8.1-fpm-alpine
|
||||
WORKDIR /app
|
||||
COPY . ./
|
||||
COPY --from=0 /app/public/assets ./public/assets
|
||||
COPY --from=0 /app/public/build ./public/build
|
||||
RUN apk add --no-cache --update ca-certificates dcron curl git supervisor tar unzip nginx libpng-dev libxml2-dev libzip-dev certbot certbot-nginx \
|
||||
&& docker-php-ext-configure zip \
|
||||
&& docker-php-ext-install bcmath gd pdo_mysql zip \
|
||||
|
||||
@@ -24,6 +24,11 @@ Pyrodactyl is the Pterodactyl-based game server management panel that focuses on
|
||||
|
||||
## Running Pyrodactyl
|
||||
|
||||
> [!TIP]
|
||||
> Pyrodactyl now [has a Docker image avaliable](https://github.com/pyrohost/panel/pkgs/container/panel), which for previous users of the Pterodactyl panel in Docker, should make it easy to migrate.
|
||||
>
|
||||
> If you want to setup Pyrodactyl in Docker from scratch, see the [`docker-compose.example.yml`](https://github.com/pyrohost/panel/blob/main/docker-compose.example.yml).
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- Latest LTS version of NodeJS
|
||||
|
||||
@@ -15,6 +15,7 @@ x-common:
|
||||
# Uncomment the line below and set to a non-empty value if you want to use Let's Encrypt
|
||||
# to generate an SSL certificate for the Panel.
|
||||
# LE_EMAIL: ""
|
||||
HASHIDS_SALT: "CHANGE_ME_TO_A_RANDOM_20_CHAR_STRING"
|
||||
mail:
|
||||
&mail-environment
|
||||
MAIL_FROM: "noreply@example.com"
|
||||
@@ -47,7 +48,7 @@ services:
|
||||
image: redis:alpine
|
||||
restart: always
|
||||
panel:
|
||||
image: ghcr.io/pterodactyl/panel:latest
|
||||
image: ghcr.io/pyrohost/panel:main
|
||||
restart: always
|
||||
ports:
|
||||
- "80:80"
|
||||
@@ -71,6 +72,7 @@ services:
|
||||
REDIS_HOST: "cache"
|
||||
DB_HOST: "database"
|
||||
DB_PORT: "3306"
|
||||
HASHIDS_LENGTH: 8
|
||||
networks:
|
||||
default:
|
||||
ipam:
|
||||
|
||||
Reference in New Issue
Block a user