FROM alpine RUN apk add --update --no-cache lighttpd python3 py3-pip nodejs php-cgi RUN apk add --update --no-cache vim nano curl wget sed RUN apk add --update --no-cache php81-bcmath php81-calendar php81-common php81-ctype php81-curl php81-dom php81-embed php81-exif php81-fileinfo php81-ftp php81-gd php81-gettext php81-gmp php81-iconv php81-imap php81-intl php81-json php81-mbstring php81-openssl php81-pcntl php81-pdo php81-pdo_sqlite php81-pear php81-session php81-simplexml php81-sockets php81-sodium php81-sqlite3 php81-sysvmsg php81-sysvsem php81-sysvshm php81-tidy php81-tokenizer php81-xml php81-xmlreader php81-xmlwriter php81-xsl php81-zip php81-pecl-xhprof php81-pecl-xhprof-assets php81-pecl-uuid php81-pecl-protobuf php81-pecl-xdebug php81-pecl-memcached php81-pecl-ssh2 php81-pecl-imagick php81-pecl-imagick-dev php81-pecl-vips php81-pecl-ast php81-pecl-event php81-pecl-redis php81-pecl-apcu php81-pecl-mailparse php81-pecl-msgpack php81-pecl-yaml php81-brotli php81-pecl-amqp php81-pecl-couchbase php81-pecl-igbinary php81-pecl-lzf RUN pip3 install requests scrapy beautifulsoup4 COPY lighttpd.conf /etc/lighttpd/lighttpd.conf RUN rm -r /var/www/localhost && mkdir /var/www/html && chown -R lighttpd:lighttpd /var/www/html RUN touch /run/lighttpd.pid && chown lighttpd:lighttpd /run/lighttpd.pid # Generate error pages WORKDIR /tmp COPY generate_errorpages.py ./ COPY errorpage_template.html ./ RUN mkdir /var/www/error_pages RUN python3 /tmp/generate_errorpages.py /var/www/error_pages RUN rm -rf /tmp WORKDIR / USER lighttpd CMD ["/usr/sbin/lighttpd", "-D", "-f", "/etc/lighttpd/lighttpd.conf"]