FROM perl:5.32

# Dependency time
RUN apt-get update
RUN apt-get -y upgrade
RUN apt-get -y install fortune-mod ruby
RUN cpanm CGI
RUN cpanm CGI::Carp
RUN cpanm Mojolicious
RUN cpanm Mojolicious::Plugin::CGI
RUN cpanm Number::Format
RUN cpanm Regexp::Common
# Version 0.106 of Getopt::Long::Descriptive won't build for me; as
# it's just a dependency for WebService::Mattermost anyways let's just
# go with 0.105 since we know that works
RUN cpanm RJBS/Getopt-Long-Descriptive-0.105.tar.gz
RUN cpanm WebService::Mattermost
RUN cpanm XML::LibXML
RUN gem install cgi
RUN gem install ipaddress

# Move it
WORKDIR /opt
COPY cgi-bin/ ./cgi-bin/
COPY public/ ./public/
COPY templates/ ./templates/
COPY .mmCreds.xml .
COPY .msg.bans .
COPY .name.bans .
COPY www-swagg.conf .
COPY www-swagg.pl .

# Finish setting up the environment
ENV MOJO_REVERSE_PROXY=1

# Send it
CMD ["perl", "www-swagg.pl", "daemon", "-m", "production"]
