##########################################
#Dockerfile to setup Apache2 used for hft, see https://coolscript.org/index.php/HTTP_Copy
#NOTE:
#See the readme.txt 
#BUILD:
#docker build --no-cache -t hft_image:1.0 .
#RUN
#docker run --name hft -dit -p 80:80 -p 443:443 --mount type=bind,source=/usr/local/hft-data/,target=/usr/local/hft-data/ hft_image:1.0
#ATTACH
#docker exec -it hft bash
##########################################

#INSTALL IMAGE (debian or ubuntu)
FROM debian

#UPDATE CACHE
RUN apt-get update

#INSTALL PACKAGES
#Apache2
RUN apt-get install apache2 apache2-utils  --assume-yes
#Apache2 Perl general
RUN apt-get install libapache2-mod-perl2 libcgi-pm-perl  --assume-yes


#COPY REQUIRED FILES, RELATIVE/RECURSIVE/MERGE (NO OVERWRITE)
COPY ./var/. /var/
COPY ./etc/. /etc/


#SET PERMISSIONS
RUN chown www-data /var/www/hft/* -R
RUN chmod 755 /var/www/hft/cgi-bin/*
#ATTENTION: THIS MUST BE IN SYNC WITH INDEX.CGI
RUN mkdir /usr/local/hft-data


#CONFIGURE APACHE
RUN a2dissite 000-default.conf
RUN a2ensite hft.conf
RUN a2enmod cgi
RUN a2enmod perl
RUN a2enmod ssl
RUN a2enconf ssl
#SUPRESS FQDN WARNINGS
RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf

#Just for debugging purposes
#ENTRYPOINT ["/bin/bash"]

#Finalyze with the apache entrypoint
CMD ["-D", "FOREGROUND"]
ENTRYPOINT ["apachectl"]

