diff --git a/.docker/php83.dockerfile b/.docker/php83.dockerfile new file mode 100644 index 00000000..c75fbe71 --- /dev/null +++ b/.docker/php83.dockerfile @@ -0,0 +1,25 @@ +FROM --platform=linux/amd64 php:8.3-cli-alpine AS build-stage + +RUN apk add --update make git + +# hadolint ignore=DL3022 +COPY --chmod=755 --from=composer/composer:2-bin /composer /usr/bin/composer + +RUN mkdir -p /opt/box-project/box +WORKDIR /opt/box-project/box +ADD . /opt/box-project/box +RUN make compile + +FROM --platform=linux/amd64 php:8.3-cli-alpine + +# hadolint ignore=DL3022 +COPY --chmod=755 --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/ +RUN install-php-extensions zlib phar sodium tokenizer filter intl + +COPY --chmod=755 --from=build-stage /opt/box-project/box/bin/box.phar /usr/bin/box +# hadolint ignore=DL3022 +COPY --chmod=755 --from=composer/composer:2-bin /composer /usr/bin/composer + +RUN mkdir -p /local +WORKDIR /local +ENTRYPOINT ["/usr/bin/box"] diff --git a/.docker/php83_xdebug.dockerfile b/.docker/php83_xdebug.dockerfile new file mode 100644 index 00000000..c2703d4c --- /dev/null +++ b/.docker/php83_xdebug.dockerfile @@ -0,0 +1,25 @@ +FROM --platform=linux/amd64 php:8.3-cli-alpine as build-stage + +RUN apk add --update make git + +# hadolint ignore=DL3022 +COPY --chmod=755 --from=composer/composer:2-bin /composer /usr/bin/composer + +RUN mkdir -p /opt/box-project/box +WORKDIR /opt/box-project/box +ADD . /opt/box-project/box +RUN make compile + +FROM --platform=linux/amd64 php:8.3-cli-alpine + +# hadolint ignore=DL3022 +COPY --chmod=755 --from=mlocati/php-extension-installer /usr/bin/install-php-extensions /usr/local/bin/ +RUN install-php-extensions zlib phar sodium tokenizer filter intl xdebug + +COPY --chmod=755 --from=build-stage /opt/box-project/box/bin/box.phar /usr/bin/box +# hadolint ignore=DL3022 +COPY --chmod=755 --from=composer/composer:2-bin /composer /usr/bin/composer + +RUN mkdir -p /local +WORKDIR /local +ENTRYPOINT ["/usr/bin/box"] diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml index 9bed2253..5ca3ff23 100644 --- a/.github/workflows/docker.yaml +++ b/.github/workflows/docker.yaml @@ -38,6 +38,12 @@ jobs: - name: PHP 8.2 (Xdebug) docker-file: .docker/php82_xdebug.dockerfile image-tag: ghcr.io/box-project/box_php82_xdebug + - name: PHP 8.3 + docker-file: .docker/php83.dockerfile + image-tag: ghcr.io/box-project/box_php83 + - name: PHP 8.3 (Xdebug) + docker-file: .docker/php83_xdebug.dockerfile + image-tag: ghcr.io/box-project/box_php83_xdebug steps: - name: Checkout uses: actions/checkout@v4