FROM debian:latest # Change these ENV LISTEN_PORT=4400 ENV ADMIN_EMAIL='me@example.com' # Install deps RUN apt-get update \ && apt-get install --yes curl apache2 \ && rm -rf /var/lib/apt/lists/* # Copy over cgi and libs # TODO: Copy only needed libs RUN mkdir /var/www/cgi-bin/ && chown www-data:www-data /var/www/cgi-bin/ COPY dashboard.cgi /var/www/cgi-bin/index.cgi COPY lib/ /usr/local/bin/ # Configure apache RUN a2enmod cgi rewrite RUN sed -i "s/^Listen 80$/Listen ${LISTEN_PORT}/" \ /etc/apache2/ports.conf RUN sed -i "s/^$//" \ /etc/apache2/sites-available/000-default.conf RUN sed -i "s/ServerAdmin .*$/ServerAdmin ${ADMIN_EMAIL}/" \ /etc/apache2/sites-available/000-default.conf RUN sed -i "s|DocumentRoot .*$|DocumentRoot /var/www/cgi-bin\n\tScriptAlias / /var/www/cgi-bin/index.cgi|" \ /etc/apache2/sites-available/000-default.conf # Run time! EXPOSE ${LISTEN_PORT} CMD ["apachectl", "-D", "FOREGROUND"]