| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:ddf1aa62235de6657123492b19d27d937c25668011b5ebf923a3f019200f8540 in / |
| CMD ["/bin/bash"] |
| ARG OLS_VERSION=1.8.4 |
| ARG PHP_VERSION=lsphp85 |
| ARG TARGETPLATFORM=linux/amd64 |
| ENV LS_FD=/usr/local/lsws |
| ENV PHPINI_PATH=/usr/local/lsws/lsphp85/etc/php/*/litespeed/php.ini |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c apt-get update && apt-get install wget curl cron tzdata -y # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c if [ "$TARGETPLATFORM" = "linux/amd64" ]; then wget https://openlitespeed.org/packages/openlitespeed-$OLS_VERSION-x86_64-linux.tgz && tar xzf openlitespeed-$OLS_VERSION-x86_64-linux.tgz && cd openlitespeed && ./install.sh && echo 'cloud-docker' > $LS_FD/PLAT && rm -rf /openlitespeed && rm /openlitespeed-$OLS_VERSION-x86_64-linux.tgz; elif [ "$TARGETPLATFORM" = "linux/arm64" ]; then wget https://openlitespeed.org/packages/openlitespeed-$OLS_VERSION-aarch64-linux.tgz && tar xzf openlitespeed-$OLS_VERSION-aarch64-linux.tgz && cd openlitespeed && ./install.sh && echo 'cloud-docker' > $LS_FD/PLAT && rm -rf /openlitespeed && rm /openlitespeed-$OLS_VERSION-aarch64-linux.tgz; else echo "$TARGETPLATFORM is not supported"; fi # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c wget -O - https://repo.litespeed.sh | bash # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c apt-get update && apt-get install mysql-client $PHP_VERSION $PHP_VERSION-common $PHP_VERSION-mysql $PHP_VERSION-curl $PHP_VERSION-imagick $PHP_VERSION-redis $PHP_VERSION-memcached $PHP_VERSION-intl -y # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/bash -c case "$PHP_VERSION" in lsphp81|lsphp82|lsphp83|lsphp84) apt-get install ${PHP_VERSION}-opcache -y ;; esac # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/bash -c if [[ $PHP_VERSION == lsphp7* ]]; then apt-get install $PHP_VERSION-json -y; fi # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c wget -O $LS_FD/admin/misc/lsup.sh https://raw.githubusercontent.com/litespeedtech/openlitespeed/master/dist/admin/misc/lsup.sh && chmod +x $LS_FD/admin/misc/lsup.sh # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c sed -i 's/memory_limit = 128M/memory_limit = 1024M/g' $PHPINI_PATH && sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 1024M/g' $PHPINI_PATH && sed -i 's/post_max_size = 8M/post_max_size = 1024M/g' $PHPINI_PATH && sed -i 's/max_execution_time = 30/max_execution_time = 300/g' $PHPINI_PATH # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c 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/bin/wp && ln -s $LS_FD/$PHP_VERSION/bin/php /usr/bin/php # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c wget -O - https://get.acme.sh | sh # buildkit |
| EXPOSE [7080/tcp] |
| ENV PATH=/usr/local/sbin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin |
| ADD docker.conf /usr/local/lsws/conf/templates/docker.conf # buildkit |
| ADD setup_docker.sh /usr/local/lsws/bin/setup_docker.sh # buildkit |
| ADD htpasswd /usr/local/lsws/admin/conf/htpasswd # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c $LS_FD/bin/setup_docker.sh && rm $LS_FD/bin/setup_docker.sh # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c chown 994:994 $LS_FD/conf -R # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c cp -RP $LS_FD/conf/ $LS_FD/.conf/ # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c cp -RP $LS_FD/admin/conf $LS_FD/admin/.conf/ # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/bash -c if [[ $PHP_VERSION == lsphp8* ]]; then ln -sf $LS_FD/$PHP_VERSION/bin/lsphp $LS_FD/fcgi-bin/lsphp8; fi # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/bash -c if [[ $PHP_VERSION == lsphp8* ]]; then ln -sf $LS_FD/fcgi-bin/lsphp8 $LS_FD/fcgi-bin/lsphp; fi # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/bash -c if [[ $PHP_VERSION == lsphp7* ]]; then ln -sf $LS_FD/$PHP_VERSION/bin/lsphp $LS_FD/fcgi-bin/lsphp7; fi # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/bash -c if [[ $PHP_VERSION == lsphp7* ]]; then ln -sf $LS_FD/fcgi-bin/lsphp7 $LS_FD/fcgi-bin/lsphp; fi # buildkit |
| COPY entrypoint.sh /entrypoint.sh # buildkit |
| RUN |3 OLS_VERSION=1.8.4 PHP_VERSION=lsphp85 TARGETPLATFORM=linux/amd64 /bin/sh -c chmod +x /entrypoint.sh # buildkit |
| ENTRYPOINT ["/entrypoint.sh"] |
| WORKDIR /var/www/vhosts/ |
| ARG PHPVER=85 |
| ENV PHPVER=85 |
| RUN |1 PHPVER=85 /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends gettext-base sudo cron ca-certificates curl wget lsphp${PHPVER}-ldap && apt-get clean && rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/* # buildkit |
| RUN |1 PHPVER=85 /bin/sh -c curl -fsSL -o /usr/local/bin/composer https://getcomposer.org/download/latest-stable/composer.phar && chmod +x /usr/local/bin/composer # buildkit |
| COPY ./scripts/entrypoint-litespeed.sh ./scripts/create-vhost-litespeed.sh ./scripts/detect-memory-litespeed.sh ./scripts/install-lscache-wp.sh ./scripts/log-rotate.sh /scripts/ # buildkit |
| RUN |1 PHPVER=85 /bin/sh -c chmod +x /scripts/* # buildkit |
| COPY ./configs/litespeed/ /etc/lsws-templates/ # buildkit |
| RUN |1 PHPVER=85 /bin/sh -c bash -c 'set -e; SCAN_DIR=$(/usr/local/lsws/lsphp${PHPVER}/bin/lsphp -i 2>/dev/null | awk -F"=> " "/^Scan this dir/ {print \$2; exit}"); mkdir -p "$SCAN_DIR"; cp /etc/lsws-templates/lsphp-overrides.ini "$SCAN_DIR/99-prod-overrides.ini"; echo "wrote overrides to $SCAN_DIR"' # buildkit |
| RUN |1 PHPVER=85 /bin/sh -c sed -i 's|^[[:space:]]*address[[:space:]]\+\*:| address 127.0.0.1:|' /usr/local/lsws/admin/conf/admin_config.conf 2>/dev/null || true # buildkit |
| RUN |1 PHPVER=85 /bin/sh -c echo "15 */12 * * * root /scripts/log-rotate.sh" >> /etc/crontab # buildkit |
| EXPOSE [443/tcp 80/tcp] |
| HEALTHCHECK {Test:[CMD-SHELL curl -fsSk https://127.0.0.1/healthz || exit 1] Interval:30s Timeout:5s StartPeriod:20s StartInterval:0s Retries:3} |
| ENTRYPOINT ["/scripts/entrypoint-litespeed.sh"] |