diff --git a/.github/docker/entrypoint.sh b/.github/docker/entrypoint.sh index 9cd4c9b0fc..7f4de80cd8 100644 --- a/.github/docker/entrypoint.sh +++ b/.github/docker/entrypoint.sh @@ -1,7 +1,7 @@ #!/bin/ash -e cd /app -mkdir -p /var/log/panel/logs/ /var/log/supervisord/ /var/log/nginx/ /var/log/php7/ \ +mkdir -p /var/log/panel/logs/ /var/log/supervisord/ /var/log/nginx/ /var/log/php8/ \ && chmod 777 /var/log/panel/logs/ \ && ln -s /app/storage/logs/ /var/log/panel/ diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index be1b593692..4bbbae1fd9 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -12,7 +12,7 @@ jobs: strategy: fail-fast: false matrix: - node-version: [18] + node-version: [18, 21] steps: - name: Code Checkout uses: actions/checkout@v4 diff --git a/Dockerfile b/Dockerfile index 95d0fefe24..1c3c34a62a 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 -FROM --platform=$TARGETOS/$TARGETARCH mhart/alpine-node:14 +FROM --platform=$TARGETOS/$TARGETARCH node:21-alpine WORKDIR /app COPY . ./ RUN yarn install --frozen-lockfile \ @@ -10,13 +10,13 @@ RUN yarn install --frozen-lockfile \ # Stage 1: # Build the actual container with all of the needed PHP dependencies that will run the application. -FROM --platform=$TARGETOS/$TARGETARCH php:8.1-fpm-alpine +FROM --platform=$TARGETOS/$TARGETARCH php:8.3-fpm-alpine WORKDIR /app COPY . ./ COPY --from=0 /app/public/assets ./public/assets -RUN apk add --no-cache --update ca-certificates dcron curl git supervisor tar unzip nginx libpng-dev libxml2-dev libzip-dev certbot certbot-nginx \ +RUN apk add --no-cache --update ca-certificates dcron curl git supervisor tar unzip nginx libpng-dev libxml2-dev libzip-dev icu-dev certbot certbot-nginx \ && docker-php-ext-configure zip \ - && docker-php-ext-install bcmath gd pdo_mysql zip \ + && docker-php-ext-install bcmath gd intl pdo_mysql zip \ && curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer \ && cp .env.example .env \ && mkdir -p bootstrap/cache/ storage/logs storage/framework/sessions storage/framework/views storage/framework/cache \