From 49d5ef271d47b45a5bcf60b4e60e4c78210b8d0b Mon Sep 17 00:00:00 2001 From: Alex Date: Sat, 4 Dec 2021 20:33:42 +0200 Subject: [PATCH] ARM64 support for the Panel Docker image, closes #3580 (#3709) Co-authored-by: Dane Everitt --- .github/workflows/docker.yml | 2 ++ Dockerfile | 4 ++-- docker-compose.example.yml | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 99801aa3b..444208c53 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -36,6 +36,7 @@ jobs: if: "!contains(github.ref, 'develop')" with: push: true + platforms: linux/amd64,linux/arm64 tags: ${{ steps.docker_meta.outputs.tags }} labels: ${{ steps.docker_meta.outputs.labels }} - name: Release Development Build @@ -43,5 +44,6 @@ jobs: if: "contains(github.ref, 'develop')" with: push: ${{ github.event_name != 'pull_request' }} + platforms: linux/amd64,linux/arm64 tags: ${{ steps.docker_meta.outputs.tags }} labels: ${{ steps.docker_meta.outputs.labels }} diff --git a/Dockerfile b/Dockerfile index 8d50d3845..73f79bf86 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ # 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 mhart/alpine-node:14 +FROM --platform=$TARGETOS/$TARGETARCH mhart/alpine-node:14 WORKDIR /app COPY . ./ RUN yarn install --frozen-lockfile \ @@ -10,7 +10,7 @@ RUN yarn install --frozen-lockfile \ # Stage 1: # Build the actual container with all of the needed PHP dependencies that will run the application. -FROM php:7.4-fpm-alpine +FROM --platform=$TARGETOS/$TARGETARCH php:7.4-fpm-alpine WORKDIR /app COPY . ./ COPY --from=0 /app/public/assets ./public/assets diff --git a/docker-compose.example.yml b/docker-compose.example.yml index 8ebc8d114..e25b27fcb 100644 --- a/docker-compose.example.yml +++ b/docker-compose.example.yml @@ -34,7 +34,7 @@ x-common: # services: database: - image: library/mysql:8.0 + image: mariadb:10.5 restart: always command: --default-authentication-plugin=mysql_native_password volumes: