open-dmarc-analyzer-docker/Dockerfile

68 lines
1.9 KiB
Docker

## https://github.com/userjack6880/Open-Report-Parser
FROM debian:12 AS parserbuild
RUN apt-get update
RUN apt-get -y upgrade
RUN apt-get install -y git
WORKDIR /src
RUN git clone https://github.com/userjack6880/Open-Report-Parser.git
RUN mkdir -p /opt/open-report-parser
# Extract archive
WORKDIR /src/Open-Report-Parser
RUN git archive --format tar main | tar -x -C /opt/open-report-parser
## https://github.com/userjack6880/Open-DMARC-Analyzer
### We need composer
FROM composer:latest AS composer
FROM php:cli AS analyzerbuilder
RUN apt-get update
RUN apt-get -y upgrade
RUN apt-get install -y git
RUN mkdir -p /src/analyzer
COPY --from=composer /usr/bin/composer /usr/bin/composer
WORKDIR /src
RUN git clone https://github.com/userjack6880/Open-DMARC-Analyzer.git
WORKDIR /src/Open-DMARC-Analyzer
RUN git archive --format tar version-1 | tar -x -C /src/analyzer
WORKDIR /src/analyzer
RUN /usr/bin/composer require "kevinoo/phpwhois":"^6.3"
## The Image!
FROM php:8.3-apache
# Install dependencies
RUN apt-get update
RUN apt-get -y upgrade
RUN apt-get install -y libpq-dev libfile-mimeinfo-perl libmail-imapclient-perl libmime-tools-perl \
libxml-simple-perl libio-socket-inet6-perl libio-socket-ip-perl libperlio-gzip-perl \
libmail-mbox-messageparser-perl libwww-perl unzip \
libdbd-mysql-perl libdbd-pg-perl \
liblwp-protocol-https-perl libencode-perl libtime-piece-mysql-perl \
libjson-perl
RUN docker-php-ext-install pdo pdo_mysql pdo_pgsql
# open-report-parser
COPY --from=parserbuild /opt/open-report-parser /opt/open-report-parser
# open-report-analyzer
COPY --chown=33:33 --from=analyzerbuilder /src/analyzer /var/www/html
# open-report-analyzer configuration
COPY --chown=33:33 ./conf/config.analyzer.php /var/www/html/config.php
# configure PHP
RUN cd /usr/local/etc/php ; \
mv php.ini-production php.ini ; \
rm php.ini-development