Created
December 19, 2020 11:04
-
-
Save petebytes/eb84d374d72fdd0086164426f94c9e23 to your computer and use it in GitHub Desktop.
Mautic v3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: '2' | |
services: | |
mauticdb: | |
image: percona/percona-server:5.7 | |
container_name: mauticdb | |
volumes: | |
- mysql_data:/var/lib/mysql | |
environment: | |
- MYSQL_ROOT_PASSWORD=yourpassword | |
command: | |
--character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci | |
networks: | |
- mautic-net | |
mautic: | |
image: mautic/mautic:v3 | |
container_name: mautic | |
links: | |
- mauticdb:mysql | |
depends_on: | |
- mauticdb | |
ports: | |
- 8080:80 | |
volumes: | |
- mautic_data:/var/www/html | |
environment: | |
- MAUTIC_DB_HOST=mauticdb | |
- MYSQL_PORT_3306_TCP=3306 | |
- MAUTIC_DB_USER=root | |
- MAUTIC_DB_PASSWORD=yourpassword | |
- MAUTIC_DB_NAME=mautic | |
- MAUTIC_RUN_CRON_JOBS=true | |
networks: | |
- mautic-net | |
volumes: | |
mysql_data: | |
driver: local | |
mautic_data: | |
driver: local | |
networks: | |
mautic-net: | |
driver: bridge |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
FROM php:7.3-apache | |
LABEL vendor="Mautic" | |
LABEL maintainer="Luiz Eduardo Oliveira Fonseca <luiz@powertic.com>" | |
# Install PHP extensions | |
RUN apt-get update && apt-get install --no-install-recommends -y \ | |
ca-certificates \ | |
build-essential \ | |
software-properties-common \ | |
cron \ | |
git \ | |
htop \ | |
wget \ | |
dos2unix \ | |
curl \ | |
libcurl4-gnutls-dev \ | |
sudo \ | |
libc-client-dev \ | |
libkrb5-dev \ | |
libmcrypt-dev \ | |
libssl-dev \ | |
libxml2-dev \ | |
libzip-dev \ | |
libjpeg-dev \ | |
libmagickwand-dev \ | |
libpng-dev \ | |
libgif-dev \ | |
libtiff-dev \ | |
libz-dev \ | |
libpq-dev \ | |
imagemagick \ | |
graphicsmagick \ | |
libwebp-dev \ | |
libjpeg62-turbo-dev \ | |
libxpm-dev \ | |
libaprutil1-dev \ | |
libicu-dev \ | |
libfreetype6-dev \ | |
unzip \ | |
nano \ | |
zip \ | |
mariadb-client \ | |
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false \ | |
&& rm -rf /var/lib/apt/lists/* \ | |
&& rm /etc/cron.daily/* | |
RUN docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \ | |
docker-php-ext-install imap && \ | |
docker-php-ext-enable imap | |
RUN docker-php-ext-configure gd --with-freetype-dir=/usr/lib --with-png-dir=/usr/lib --with-jpeg-dir=/usr/lib \ | |
&& docker-php-ext-install gd \ | |
&& docker-php-ext-configure opcache --enable-opcache \ | |
&& docker-php-ext-install intl mbstring mysqli curl pdo_mysql zip opcache bcmath gd \ | |
&& docker-php-ext-enable intl mbstring mysqli curl pdo_mysql zip opcache bcmath gd | |
# Install composer | |
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/bin --filename=composer | |
# Define Mautic volume to persist data | |
VOLUME /var/www/html | |
# Define Mautic version and expected SHA1 signature | |
ENV MAUTIC_VERSION 3.0.2 | |
ENV MAUTIC_SHA1 225dec8fbac05dfb77fdd7ed292a444797db215f | |
# By default enable cron jobs | |
ENV MAUTIC_RUN_CRON_JOBS true | |
# Setting an Default database user for Mysql | |
ENV MAUTIC_DB_USER root | |
# Setting an Default database name for Mysql | |
ENV MAUTIC_DB_NAME mautic | |
# Setting PHP properties | |
ENV PHP_INI_DATE_TIMEZONE='UTC' \ | |
PHP_MEMORY_LIMIT=512M \ | |
PHP_MAX_UPLOAD=512M \ | |
PHP_MAX_EXECUTION_TIME=300 | |
# Download package and extract to web volume | |
RUN curl -o mautic.zip -SL https://github.com/mautic/mautic/releases/download/${MAUTIC_VERSION}/${MAUTIC_VERSION}.zip \ | |
&& echo "$MAUTIC_SHA1 *mautic.zip" | sha1sum -c - \ | |
&& mkdir /usr/src/mautic \ | |
&& unzip mautic.zip -d /usr/src/mautic \ | |
&& rm mautic.zip \ | |
&& chown -R www-data:www-data /usr/src/mautic | |
# Copy init scripts and custom .htaccess | |
COPY docker-entrypoint.sh /entrypoint.sh | |
COPY makeconfig.php /makeconfig.php | |
COPY makedb.php /makedb.php | |
COPY mautic.crontab /etc/cron.d/mautic | |
RUN chmod 644 /etc/cron.d/mautic | |
# Enable Apache Rewrite Module | |
RUN a2enmod rewrite | |
# Apply necessary permissions | |
RUN ["chmod", "+x", "/entrypoint.sh"] | |
ENTRYPOINT ["/entrypoint.sh"] | |
CMD ["apache2-foreground"] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment