FROM harbor-repo.paynetics.io/php-base/php-base:8.1.12-fpm-amd64 as base

WORKDIR /app

# Override Docker configuration: listen on Unix socket instead of TCP
RUN sed -i "s|listen = 9000|listen = /var/run/php/fpm.sock\nlisten.mode = 0666|" /usr/local/etc/php-fpm.d/zz-docker.conf
# RUN echo "listen.owner = www-data" >> /usr/local/etc/php-fpm.d/zz-docker.conf
# RUN echo "listen.group = www-data" >> /usr/local/etc/php-fpm.d/zz-docker.conf
# RUN usermod -u 1000 nginx
# RUN groupmod -g 1000 nginx

RUN mkdir -p /var/run/php/

CMD ["php-fpm"]

FROM composer:2.4.4 as composer

COPY id_rsa /root/.ssh/
RUN chmod 600 /root/.ssh/id_rsa
RUN chown root:root /root/.ssh/id_rsa
RUN ssh-keyscan bitbucket.org >> /root/.ssh/known_hosts

RUN rm -rf /app && mkdir /app
WORKDIR /app

COPY composer.* /app/

RUN set -xe \
    && if [ "$APP_ENV" = "prod" ]; then export ARGS="--no-dev"; fi \
    && composer install --prefer-dist --no-scripts --no-progress --no-suggest --no-interaction --ignore-platform-reqs $ARGS
COPY . /app

RUN composer dump-autoload --classmap-authoritative

RUN rm -rf /root/.ssh/

FROM base

COPY --from=composer /app/ /app/
# RUN rm -rf var/cache
# RUN rm -rf var/log
# RUN mkdir -p var/log var/cache
# RUN chown -R nginx:nginx var
# RUN chmod -R 777 var
RUN php --version
# Memory limit increase is required by the dev image
RUN php -d memory_limit=256M bin/console cache:clear
RUN bin/console assets:install


# FROM php:8.1-fpm
# RUN mkdir /app
# COPY public/hello.php /app