Files

44 lines
1.5 KiB
Docker

FROM php:8.5-apache
RUN php -r 'if (version_compare(PHP_VERSION, "8.5.12", "<")) { fwrite(STDERR, "PHP 8.5.12 or newer is required\n"); exit(1); }'
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates \
git \
iputils-ping \
wakeonlan && \
rm -rf /var/lib/apt/lists/* && \
chmod u+s "$(command -v ping)"
RUN git clone --depth 1 --branch 3.5.0 https://github.com/sciguy14/Remote-Wake-Sleep-On-LAN-Server.git /tmp/rwsols && \
cp -a /tmp/rwsols/www/html/. /var/www/html/ && \
rm -rf /tmp/rwsols && \
rm -f /var/www/html/config_sample.php /var/www/html/index.html && \
sed -i '/curl_close(/d' /var/www/html/index.php
COPY 000-default.conf /etc/apache2/sites-available/000-default.conf
COPY ports.conf /etc/apache2/ports.conf
COPY php-security.ini /usr/local/etc/php/conf.d/zz-security.ini
COPY config.php /usr/local/share/rwsols-config.php
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh && \
a2enmod headers && \
sed -i 's/^ServerTokens .*/ServerTokens Prod/; s/^ServerSignature .*/ServerSignature Off/' /etc/apache2/conf-available/security.conf && \
echo 'ServerName localhost' >> /etc/apache2/apache2.conf
ENV APACHE2_PORT=80
ENV PASSPHRASE=admin
ENV RWSOLS_MAX_PINGS=15
ENV RWSOLS_SLEEP_TIME=5
ENV RWSOLS_COMPUTER_NAME=
ENV RWSOLS_COMPUTER_MAC=
ENV RWSOLS_COMPUTER_IP=
ENV RWSOLS_SLEEP_PORT=7760
ENV RWSOLS_SLEEP_CMD=suspend
ENTRYPOINT ["/entrypoint.sh"]