| ADD file:90b9dd8f12120e8b2cd3ece45fcbe8af67e40565e2032a40f64bd921c43e2ce7 in / |
| CMD ["bash"] |
| LABEL maintainer=lycheeorg |
| ENV PUID=1000 |
| ENV PGID=1000 |
| ENV USER=lychee |
| ENV PHP_TZ=UTC |
| ARG TARGET=release |
| ARG COMPOSER_NO_DEV=1 |
| ARG BRANCH=master |
| RUN |3 TARGET=release COMPOSER_NO_DEV=1 BRANCH=master /bin/sh -c set -ev && [ "$TARGET" != "release" -o "$BRANCH" = "master" ] && apt-get update && apt-get upgrade -qy && apt-get install -qy --no-install-recommends adduser nginx-light php8.2-mysql php8.2-pgsql php8.2-sqlite3 php8.2-imagick php8.2-mbstring php8.2-gd php8.2-xml php8.2-zip php8.2-fpm php8.2-redis php8.2-bcmath php8.2-intl curl libimage-exiftool-perl ffmpeg git jpegoptim optipng pngquant gifsicle webp cron composer unzip && addgroup --gid "$PGID" "$USER" && adduser --gecos '' --no-create-home --disabled-password --uid "$PUID" --gid "$PGID" "$USER" && cd /var/www/html && if [ "$TARGET" = "release" ] ; then RELEASE_TAG="-b v$(curl -s https://raw.githubusercontent.com/LycheeOrg/Lychee/master/version.md)" ; elif [ "$BRANCH" != "master" ] ; then RELEASE_TAG="-b $BRANCH" ; fi && git clone --depth 1 $RELEASE_TAG https://github.com/LycheeOrg/Lychee.git && mv Lychee/.git/refs/heads/$BRANCH Lychee/$BRANCH || cp Lychee/.git/HEAD Lychee/$BRANCH && mv Lychee/.git/HEAD Lychee/HEAD && rm -r Lychee/.git/* && mkdir -p Lychee/.git/refs/heads && mv Lychee/HEAD Lychee/.git/HEAD && mv Lychee/$BRANCH Lychee/.git/refs/heads/$BRANCH && echo "$TARGET" > /var/www/html/Lychee/docker_target && cd /var/www/html/Lychee && echo "Last release: $(cat version.md)" && composer install --prefer-dist && find . -wholename '*/[Tt]ests/*' -delete && find . -wholename '*/[Tt]est/*' -delete && rm -r storage/framework/cache/data/* 2> /dev/null || true && rm storage/framework/sessions/* 2> /dev/null || true && rm storage/framework/views/* 2> /dev/null || true && rm storage/logs/* 2> /dev/null || true && chown -R www-data:www-data /var/www/html/Lychee && chmod -R g+ws storage/image-jobs || true && chmod -R g+ws storage/livewire-tmp || true && chmod -R g+ws storage/lychee-tmp || true && echo "* * * * * www-data cd /var/www/html/Lychee && php artisan schedule:run >> /dev/null 2>&1" >> /etc/crontab && apt-get purge -y --autoremove git composer && apt-get clean -qy && rm -rf /var/lib/apt/lists/* # buildkit |
| COPY --chown=www-data:www-data /app/public /var/www/html/Lychee/public # buildkit |
| COPY default.conf /etc/nginx/nginx.conf # buildkit |
| EXPOSE map[80/tcp:{}] |
| VOLUME [/conf /uploads /sym /logs /lychee-tmp] |
| WORKDIR /var/www/html/Lychee |
| COPY entrypoint.sh inject.sh / # buildkit |
| RUN |3 TARGET=release COMPOSER_NO_DEV=1 BRANCH=master /bin/sh -c chmod +x /entrypoint.sh && chmod +x /inject.sh && if [ ! -e /run/php ] ; then mkdir /run/php ; fi # buildkit |
| HEALTHCHECK &{["CMD-SHELL" "curl --fail http://localhost:80/ || exit 1"] "0s" "0s" "0s" "0s" '\x00'} |
| ENTRYPOINT ["/entrypoint.sh"] |
| CMD ["nginx"] |