ARG RELEASE |
ARG LAUNCHPAD_BUILD_ARCH |
LABEL org.opencontainers.image.ref.name=ubuntu |
LABEL org.opencontainers.image.version=22.04 |
ADD file:c8ef6447752cab2541ffca9e3cfa27d581f3491bc8f356f6eafd951243609341 in / |
CMD ["/bin/bash"] |
LABEL maintainer=@jaydrogers |
ENV DEBIAN_FRONTEND=noninteractive S6_KEEP_ENV=1 |
COPY /opt/s6/ / # buildkit |
ENTRYPOINT ["/init"] |
LABEL maintainer=Jay Rogers (@jaydrogers) |
ARG PHP_VERSION=8.2 |
ENV BUILD_PHP_VERSION=8.2 DEBIAN_FRONTEND=noninteractive S6_BEHAVIOUR_IF_STAGE2_FAILS=2 S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 S6_VERBOSITY=1 COMPOSER_ALLOW_SUPERUSER=1 COMPOSER_HOME=/composer COMPOSER_MAX_PARALLEL_HTTP=24 WEBUSER_HOME=/var/www/html PUID=9999 PGID=9999 |
COPY /etc/apt/sources.list.d/ /etc/apt/sources.list.d/ # buildkit |
COPY /etc/apt/trusted.gpg.d/ondrej-ubuntu-php.gpg /etc/apt/trusted.gpg.d/ondrej-ubuntu-php.gpg # buildkit |
ADD php-version-packages/8.2.txt /tmp/php-packages.txt # buildkit |
RUN |1 PHP_VERSION=8.2 /bin/sh -c apt-get update && groupadd -r -g $PGID webgroup && useradd --no-log-init -r -s /usr/bin/bash -d $WEBUSER_HOME -u $PUID -g $PGID webuser && apt-get -y --no-install-recommends install ca-certificates curl unzip && apt-get update && apt-get -y --no-install-recommends install $(cat /tmp/php-packages.txt) && ln -sf /etc/php/${BUILD_PHP_VERSION}/ /etc/php/current_version && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/* # buildkit |
COPY /usr/bin/composer /usr/bin/composer # buildkit |
COPY etc/s6-overlay/ /etc/s6-overlay/ # buildkit |
WORKDIR /var/www/html |
ENTRYPOINT ["/init"] |
CMD ["php" "-a"] |
LABEL maintainer=Jay Rogers (@jaydrogers) |
ENV PHP_DATE_TIMEZONE=UTC PHP_DISPLAY_ERRORS=Off PHP_DISPLAY_STARTUP_ERRORS=Off PHP_ERROR_REPORTING=22527 PHP_MEMORY_LIMIT=256M PHP_MAX_EXECUTION_TIME=99 PHP_OPEN_BASEDIR=/var/www/html:/dev/stdout:/tmp PHP_POST_MAX_SIZE=100M PHP_UPLOAD_MAX_FILE_SIZE=100M PHP_POOL_NAME=www PHP_PM_CONTROL=dynamic PHP_PM_MAX_CHILDREN=20 PHP_PM_START_SERVERS=2 PHP_PM_MIN_SPARE_SERVERS=1 PHP_PM_MAX_SPARE_SERVERS=3 |
RUN /bin/sh -c apt-get update && apt-get -y --no-install-recommends install php${BUILD_PHP_VERSION}-fpm libfcgi-bin && ln -sf /usr/sbin/php-fpm${BUILD_PHP_VERSION} /usr/sbin/php-fpm && sed -i -e 's/\[www\]/\[$\{PHP_POOL_NAME\}]/g' /etc/php/${BUILD_PHP_VERSION}/fpm/pool.d/www.conf && curl -o /usr/local/bin/php-fpm-healthcheck https://raw.githubusercontent.com/renatomefi/php-fpm-healthcheck/master/php-fpm-healthcheck && chmod +x /usr/local/bin/php-fpm-healthcheck && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/* /var/www/html/* # buildkit |
COPY etc/s6-overlay/ /etc/s6-overlay/ # buildkit |
COPY etc/php/fpm/pool.d/ /etc/php/current_version/fpm/pool.d/ # buildkit |
ENTRYPOINT ["/init"] |
EXPOSE map[9000/tcp:{}] |
LABEL maintainer=Jay Rogers (@jaydrogers) |
ENV MSMTP_RELAY_SERVER_HOSTNAME=mailhog MSMTP_RELAY_SERVER_PORT=1025 PHP_POOL_NAME=www PHP_PM_CONTROL=ondemand PHP_PM_MAX_CHILDREN=20 PHP_PM_START_SERVERS=2 PHP_PM_MIN_SPARE_SERVERS=1 PHP_PM_MAX_SPARE_SERVERS=3 SSL_MODE=full |
RUN /bin/sh -c apt-get update && apt-get -y --no-install-recommends install msmtp msmtp-mta nginx && chown -R webuser:webgroup /var/www/html/ && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/* /var/www/html/* && rm -f /etc/nginx/sites-enabled/default # buildkit |
COPY etc/s6-overlay/ /etc/s6-overlay/ # buildkit |
COPY etc/nginx/ /etc/nginx/ # buildkit |
COPY etc/php/fpm/pool.d/ /etc/php/current_version/fpm/pool.d/ # buildkit |
EXPOSE map[80/tcp:{}] |
EXPOSE map[443/tcp:{}] |
ENTRYPOINT ["/init"] |
ARG TARGETPLATFORM=linux/amd64 |
ARG CLOUDFLARED_VERSION=2024.4.1 |
ARG POSTGRES_VERSION=15 |
ARG CI=true |
WORKDIR /var/www/html |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c apt-get update # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c apt install dirmngr ca-certificates software-properties-common gnupg gnupg2 apt-transport-https curl -y # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c curl -fSsL https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /usr/share/keyrings/postgresql.gpg > /dev/null # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c echo deb [arch=amd64,arm64,ppc64el signed-by=/usr/share/keyrings/postgresql.gpg] http://apt.postgresql.org/pub/repos/apt/ jammy-pgdg main | tee -a /etc/apt/sources.list.d/postgresql.list # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c apt-get update # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c apt-get install postgresql-client-$POSTGRES_VERSION -y # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c apt-get install -y php8.2-pgsql openssh-client git git-lfs jq lsof vim # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c apt-get -y autoremove && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/* # buildkit |
COPY docker/prod/nginx.conf /etc/nginx/conf.d/custom.conf # buildkit |
COPY --chown=9999:9999 /var/www/html . # buildkit |
COPY --chown=9999:9999 . . # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c composer dump-autoload # buildkit |
COPY --chown=9999:9999 /app/public/build ./public/build # buildkit |
COPY --chmod=755 docker/prod/etc/s6-overlay/ /etc/s6-overlay/ # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c php artisan route:cache # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c php artisan view:cache # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c echo "alias ll='ls -al'" >>/etc/bash.bashrc # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c echo "alias a='php artisan'" >>/etc/bash.bashrc # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c echo "alias logs='tail -f storage/logs/laravel.log'" >>/etc/bash.bashrc # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c mkdir -p /usr/local/bin # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c /bin/bash -c "if [[ ${TARGETPLATFORM} == 'linux/amd64' ]]; then echo 'amd64' && curl -sSL https://github.com/cloudflare/cloudflared/releases/download/${CLOUDFLARED_VERSION}/cloudflared-linux-amd64 -o /usr/local/bin/cloudflared && chmod +x /usr/local/bin/cloudflared ;fi" # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c /bin/bash -c "if [[ ${TARGETPLATFORM} == 'linux/arm64' ]]; then echo 'arm64' && curl -L https://github.com/cloudflare/cloudflared/releases/download/${CLOUDFLARED_VERSION}/cloudflared-linux-arm64 -o /usr/local/bin/cloudflared && chmod +x /usr/local/bin/cloudflared ;fi" # buildkit |
RUN |4 TARGETPLATFORM=linux/amd64 CLOUDFLARED_VERSION=2024.4.1 POSTGRES_VERSION=15 CI=true /bin/sh -c { echo 'upload_max_filesize=256M'; echo 'post_max_size=256M'; } > /etc/php/current_version/cli/conf.d/upload-limits.ini # buildkit |