Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,16 @@ The Default Login is `admin@local` and the Password ist `pilerrocks`

> After installation, any changes can be made in piler.conf at any time and the install script can then be run again.

#### Using Custom Database

If you are using a custom database (for example your existing mysql/mariadb server), you have to create the database by yourself.

First create a new user, for example `piler`, and write down the username and password.

After that create a new database, for example `piler`, and then import the `piler.sql` from the examples folder in the new database, so that you have all database tables.<br>
(Tested with `mailpiler 1.4.4` installation)

Finally enter everything during the installation process (`hostname`, `username`, `password` and `database`).

**********************************************************************************************************

Expand Down
67 changes: 67 additions & 0 deletions config/piler-default-no-mysql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
services:
memcached:
image: memcached:latest
container_name: memcached_piler
restart: unless-stopped
networks:
- pilernet
cap_drop:
- ALL
command: -m 64

piler:
image: simatec/piler:${PILER_VERSION}
container_name: piler
restart: unless-stopped
networks:
- pilernet
hostname: ${PILER_DOMAIN}
init: true
environment:
- MEMCACHED_HOSTNAME=memcached
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_HOSTNAME=${MYSQL_HOSTNAME}
- PILER_HOSTNAME=${PILER_DOMAIN}
- MEMCACHED_HOST=memcached_piler
- TZ=${TIME_ZONE}
- RT=1
ports:
- "${SMTP_PORT}:25"
- "${HTTP_PORT}:80"
- "${HTTPS_PORT}:443"
volumes:
- piler_etc:/etc/piler
- piler_var_store:/var/piler/store
- piler_var_manticore:/var/piler/manticore
- piler_var_imap:/var/piler/imap
- piler_var_stat:/var/piler/stat
- piler_cron:/var/spool/cron/crontabs
- /etc/localtime:/etc/localtime:ro
healthcheck:
test: curl -s smtp://localhost/
interval: "60s"
timeout: "3s"
start_period: "15s"
retries: 3
deploy:
resources:
reservations:
memory: 512M
limits:
memory: 512M
depends_on:
- memcached

networks:
pilernet:
external: true

volumes:
piler_etc:
piler_var_store:
piler_var_manticore:
piler_var_imap:
piler_var_stat:
piler_cron:
8 changes: 4 additions & 4 deletions config/piler-default.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,15 +52,15 @@ services:
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_HOSTNAME=mysql_piler
- MYSQL_HOSTNAME=${MYSQL_HOSTNAME}
- PILER_HOSTNAME=${PILER_DOMAIN}
- MEMCACHED_HOST=memcached_piler
- TZ=${TIME_ZONE}
- RT=1
ports:
- "25:25"
- "80:80"
- "443:443"
- "${SMTP_PORT}:25"
- "${HTTP_PORT}:80"
- "${HTTPS_PORT}:443"
volumes:
- piler_etc:/etc/piler
- piler_var_store:/var/piler/store
Expand Down
97 changes: 97 additions & 0 deletions config/piler-ssl-no-mysql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
services:
nginx-proxy:
image: jwilder/nginx-proxy
container_name: nginx-proxy
restart: unless-stopped
networks:
- pilernet
ports:
- "${HTTP_PORT}:80"
- "${HTTPS_PORT}:443"
volumes:
- ./nginx-data/certs:/etc/nginx/certs
- ./nginx-data/vhost.d:/etc/nginx/vhost.d
- ./nginx-data/html:/usr/share/nginx/html
- /var/run/docker.sock:/tmp/docker.sock:ro

nginx-letsencrypt:
image: jrcs/letsencrypt-nginx-proxy-companion
container_name: nginx-letsencrypt
restart: unless-stopped
networks:
- pilernet
volumes_from:
- nginx-proxy
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
- DEFAULT_EMAIL=${LETSENCRYPT_EMAIL}

memcached:
image: memcached:latest
container_name: memcached_piler
restart: unless-stopped
networks:
- pilernet
cap_drop:
- ALL
command: -m 64

piler:
image: simatec/piler:${PILER_VERSION}
container_name: piler
restart: unless-stopped
networks:
- pilernet
expose:
- "80"
hostname: ${PILER_DOMAIN}
init: true
environment:
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_HOSTNAME=${MYSQL_HOSTNAME}
- PILER_HOSTNAME=${PILER_DOMAIN}
- MEMCACHED_HOST=memcached_piler
- TZ=${TIME_ZONE}
- RT=1
- VIRTUAL_HOST=${PILER_DOMAIN}
- LETSENCRYPT_HOST=${PILER_DOMAIN}
- LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
ports:
- "${SMTP_PORT}:25"
volumes:
- piler_etc:/etc/piler
- piler_var_store:/var/piler/store
- piler_var_manticore:/var/piler/manticore
- piler_var_imap:/var/piler/imap
- piler_var_stat:/var/piler/stat
- piler_cron:/var/spool/cron/crontabs
- /etc/localtime:/etc/localtime:ro
healthcheck:
test: curl -s smtp://localhost/
interval: "60s"
timeout: "3s"
start_period: "15s"
retries: 3
deploy:
resources:
reservations:
memory: 512M
limits:
memory: 512M
depends_on:
- memcached

networks:
pilernet:
external: true

volumes:
piler_etc:
piler_var_store:
piler_var_manticore:
piler_var_imap:
piler_var_stat:
piler_cron:
8 changes: 4 additions & 4 deletions config/piler-ssl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ services:
networks:
- pilernet
ports:
- "80:80"
- "443:443"
- "${HTTP_PORT}:80"
- "${HTTPS_PORT}:443"
volumes:
- ./nginx-data/certs:/etc/nginx/certs
- ./nginx-data/vhost.d:/etc/nginx/vhost.d
Expand Down Expand Up @@ -81,7 +81,7 @@ services:
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_HOSTNAME=mysql_piler
- MYSQL_HOSTNAME=${MYSQL_HOSTNAME}
- PILER_HOSTNAME=${PILER_DOMAIN}
- MEMCACHED_HOST=memcached_piler
- TZ=${TIME_ZONE}
Expand All @@ -90,7 +90,7 @@ services:
- LETSENCRYPT_HOST=${PILER_DOMAIN}
- LETSENCRYPT_EMAIL=${LETSENCRYPT_EMAIL}
ports:
- "25:25"
- "${SMTP_PORT}:25"
volumes:
- piler_etc:/etc/piler
- piler_var_store:/var/piler/store
Expand Down
Loading