FROM alpine:3.20 ARG HOST_UID # Install WordPress and its dependencies RUN apk add --no-cache \ php83 \ php83-phar \ php83-fpm \ php83-mysqli \ php83-mbstring \ php83-json \ php83-curl \ php83-xml \ php83-zip \ php83-gd \ php83-session \ php83-tokenizer \ mariadb-client \ curl \ busybox-extras &&\ rm -rf /var/cache/apk/* # Add a new user and group # Create group with GID = HOST_UID, then user with UID = HOST_UID and GID = HOST_UID RUN addgroup -g ${HOST_UID} wordpress && \ adduser -D -u ${HOST_UID} -G wordpress wordpress # Set ownership of the working directory RUN mkdir -p /var/www/html && \ chown -R wordpress:wordpress /var/www/html # Install WP-CLI RUN curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar && \ chmod +x wp-cli.phar && \ mv wp-cli.phar /usr/local/bin/wp COPY ./conf/www.conf /etc/php83/php-fpm.d/www.conf RUN echo "memory_limit = 512M" >> /etc/php83/php.ini && \ echo 'sendmail_path = "/usr/sbin/sendmail -S mailhog:1025"' >> /etc/php83/php.ini COPY ./tools/install.sh /usr/local/bin/install.sh RUN chmod +x /usr/local/bin/install.sh ENTRYPOINT ["/usr/local/bin/install.sh"] CMD ["php-fpm83", "-F"] HEALTHCHECK --interval=10s --timeout=3s --start-period=5s --retries=3 \ CMD nc -z 127.0.0.1 9000 || exit 1