Files
alrahma_sunday_school_api/Dockerfile.ci
T
2026-03-09 17:01:24 -04:00

41 lines
1.0 KiB
Docker

FROM php:8.2-cli
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
git \
unzip \
sqlite3 \
libsqlite3-dev \
default-mysql-client \
libonig-dev \
libxml2-dev \
&& docker-php-ext-install pdo_sqlite pdo_mysql mbstring xml \
&& rm -rf /var/lib/apt/lists/*
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
ENV APP_DIR=/app
WORKDIR ${APP_DIR}
COPY . ${APP_DIR}
RUN printf '%s\n' \
'#!/bin/sh' \
'set -e' \
'if [ -z "${APP_KEY:-}" ]; then' \
' if command -v php >/dev/null 2>&1; then' \
' APP_KEY=$(php -r '"'"'echo "base64:" . base64_encode(random_bytes(32));'"'"')' \
' elif command -v openssl >/dev/null 2>&1; then' \
' APP_KEY=$(openssl rand -base64 32 | sed "s/^/base64:/")' \
' else' \
' echo "APP_KEY is required but php/openssl is unavailable." >&2' \
' exit 1' \
' fi' \
' export APP_KEY' \
'fi' \
'exec "$@"' \
> /usr/local/bin/ci-entrypoint \
&& chmod +x /usr/local/bin/ci-entrypoint
ENTRYPOINT ["ci-entrypoint"]