31 Commits

Author SHA1 Message Date
pini-gh
c10aa6fce4 Get rid of hard coded IPs (#441)
Replace them with:
* containers' hostnames
* gateway's IP address for default SMTP_HOST
* Core: when SMTP_HOST undef, echo the default value
* docker-compose: add port mapping
* docker-compose: drop network driver conf
* Exim macro: use localhost as LMTP host
* Update README.md
* docker-compose: Limit port mapping to loopback
* Update other docker-compose example files
2021-03-15 10:47:13 -07:00
Andrew Hodgson
5b07e9278a Update Exim config file examples 2018-06-05 14:26:05 +01:00
Tatsuyuki Ishi
5b20021b91 Rename entrypoint script 2017-07-28 17:46:45 +09:00
Tatsuyuki Ishi
3525682741 Remove duplicated HYPERKITTY_URL default 2017-07-25 09:10:57 +09:00
Abhilash Raj
a7ab6509f1 Set MM_HOSTNAME to hostname -i. 2017-07-23 13:55:23 -07:00
Abhilash Raj
84dac7ae42 Database configuration should be set properly when using sqlite. (#78)
This will fix the default settings for sqlite database when running mailman-core image.
2017-07-20 15:01:23 -07:00
Abhilash Raj
fb5b8c8410 Run mailman aliases to generate LMTP files when running Core. (#77)
* Run mailman aliases to generate LMTP files when running Core.

* Change the order of commands in entrypoint.
2017-07-20 12:42:35 -07:00
Rémon S
17aede3614 Update run.sh (#68)
Fix a typo in Core's run.sh
2017-07-09 15:33:05 -07:00
maxking
b16e4aae82 Fix postfix configuration for core. 2017-06-11 14:17:18 -07:00
Abhilash Raj
bb93477b0d Add configuration for postfix to core image. Add docs. 2017-05-30 14:46:39 -07:00
Abhilash Raj
f920f88165 Put the mailman.cfg in /etc instead of custom /config/ dir. (#39) 2017-05-28 13:17:13 -07:00
Abhilash Raj
f8126d90ba Fix the location of var_dir to check for master lock. 2017-05-24 16:04:21 -07:00
Abhilash Raj
1923d27238 Mysql check still doesn't work. 2017-05-24 16:04:21 -07:00
Abhilash Raj
e5dc77b558 Use the postgres client to check if database is up. 2017-05-24 16:04:21 -07:00
Abhilash Raj
8507eaeed2 Run mailman inside the container as a non-root process. (#31)
* Run as mailman user.

* Run mailman core process as a less-privileged mailman user.

* Add a `docker ps` to travis to know if any container died.

* Spit out more debug information in CI.

* Install su-exec properly.
2017-05-24 15:26:07 -07:00
Abhilash Raj
dbd4b0d5fa Set the MAILMAN_CONFIG_FILE environement variable in Dockerfile. 2017-05-23 17:00:42 -07:00
Abhilash Raj
74901ee51f Update documentation for core image. 2017-05-22 21:41:13 -07:00
Abhilash Raj
ac7134801d Point MAILMAN_CONFIG_FILE to the configuration mailman will use. 2017-05-22 21:41:13 -07:00
Abhilash Raj
2857394872 Move the mailman-core image to apline linux 2017-04-25 18:00:23 -07:00
Abhilash Raj
2833647e06 Core should set hyperkitty url by default to the mailman-web container. 2017-04-21 12:13:19 -07:00
Abhilash Raj
c4c9929213 Fix a typo bug.
Checking for the wrong database URL caused the mailman core to always use an
sqlite database even when another database is defined. This commit fixes that.
2017-04-18 08:25:23 -07:00
Abhilash Raj
67089dde74 Directly run the master runner as CMD, instead of mailman start.
`mailman start` command does not nothing but parses the configuration and starts
the appropriate runners. The start command is implemented such that it forks the
master runner, which in-turn starts the all the rest of the runners. It turns
out that `master` is also exported as an console script which can directly be
started instead of running `mailman start` command. This makes containerizing
mailman much more easier.
2017-04-10 01:26:10 -07:00
Abhilash Raj
1cfee02611 Use -v to check if variables are set in bash.
I _think_ this was added to bash in 4.1.2 or something. It is a better check
than -z which checks if the value of the variable is null or not.
2017-04-08 19:53:57 -07:00
Abhilash Raj
701825c2a3 Fix Database Url check, force mailman to start, remove security settings in
django.

- -z Does not check properly if the DATABASE_URL is defined or not. It evaluates
   to True if it is not set or set to ''

- Remove SECURE_SSL_REDIRECT in the django settings because this deployment is
  meant to behind Nginx which decrypts SSL packets.

- Force mailman to start even with a lock. This _may_ not be the best idea but
  for now if everything is followed according to this guide.
2017-04-08 19:36:39 -07:00
Abhilash Raj
0cbb2d8e38 Remove the pidproxy.py file. 2017-04-07 00:56:33 -07:00
Abhilash Raj
235e076e63 Change all the configuration variables to ENVIRONMENT VARS.
Following 12factor principle for app development, all the configuration
variables for the docker images can now be setup using environment vars.

The default values are set using the run.sh script in both mailman-web
and mailman-core containers.

Mailman-core is now run by "run.sh" which traps SIGTERM and performs
mailman stop for graceful exit of mailman core.
2017-04-07 00:56:04 -07:00
Abhilash Raj
1844d0412a Add configuration for exim4. 2017-04-05 00:41:31 -07:00
Abhilash Raj
d04f5b6dc8 Add sane mailman core configuration.
- Add configuration for exim to work with mailman core.
- Add configuration to enable hyperkitty in mailman core.
- Add configuration to enable mailman_hyperkitty plugin.
- Add mailman_hyperkitty plugin and ipython in the core container.
2017-04-05 00:35:42 -07:00
Abhilash Raj
131d1c0b8a Add a postgres database container.
- Set environemnt variables for Postgresql database in the compose file
- Set environment variables for uwsgi in the compose file
- Check if the postgresql container is up and accepting connections before
  running any actual services.
2017-03-29 21:58:40 -07:00
Abhilash Raj
c110bb1d01 Add a docker compose configuration and mailman-web
This commit adds a lot of new code including the mailman's web
frontend. It includes a configuration file which can later be
configured to run required configs.

Also, the docker-compose file spins off the containers, sets up
appropriate volumes and links.
2017-03-29 16:30:25 -07:00
Abhilash Raj
b5535d894d Initial mailman core docker container 2017-03-28 17:06:15 -07:00