# syntax=docker/dockerfile:1 FROM ghcr.io/linuxserver/baseimage-alpine-nginx:3.17 # set version label ARG BUILD_DATE ARG VERSION ARG DISKOVER_RELEASE LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}" LABEL maintainer="alex-phillips" # environment settings ENV DISKOVERDIR=/config/diskover.conf.d/diskover/ RUN \ echo "**** install build packages ****" && \ apk add --no-cache --virtual=build-dependencies \ build-base \ cargo \ composer \ git \ nodejs \ npm \ python3-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ libldap \ ncurses \ php81-curl \ php81-ldap \ php81-sqlite3 \ py3-requests \ py3-urllib3 \ py3-xxhash \ python3 && \ echo "**** configure php-fpm to pass env vars ****" && \ sed -E -i 's/^;?clear_env ?=.*$/clear_env = no/g' /etc/php81/php-fpm.d/www.conf && \ grep -qxF 'clear_env = no' /etc/php81/php-fpm.d/www.conf || echo 'clear_env = no' >> /etc/php81/php-fpm.d/www.conf && \ echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /etc/php81/php-fpm.conf && \ echo "**** install diskover ****" && \ if [ -z ${DISKOVER_RELEASE+x} ]; then \ DISKOVER_RELEASE=$(curl -sX GET "https://api.github.com/repos/diskoverdata/diskover-community/releases" \ | jq -r '.[0] | .tag_name'); \ fi && \ curl -o \ /tmp/diskover.tar.gz -L \ "https://github.com/diskoverdata/diskover-community/archive/${DISKOVER_RELEASE}.tar.gz" && \ tar xf \ /tmp/diskover.tar.gz -C \ /app/ --strip-components=1 && \ cd /app/diskover && \ python3 -m ensurepip && \ pip3 install -U --no-cache-dir \ pip \ wheel && \ pip3 install -U --no-cache-dir --find-links https://wheel-index.linuxserver.io/alpine-3.17/ -r requirements.txt && \ echo "**** cleanup ****" && \ apk del --purge \ build-dependencies && \ rm -rf \ /tmp/* \ $HOME/.cache \ $HOME/.cargo # add local files COPY root/ / # ports and volumes EXPOSE 80 443 VOLUME /config