This commit migrates docs and tests to use docker-commpose-plugin
instead of the old docker-compose package. This allows us to use
new APIs like healthchecks for containers.
Since Django 4.2 doesn't support below that, we need to bump to Postgres 12.
Django 4.1 is no longer supported, so 4.2 is the lowest version we support here.
* Test dependabot for Dockerfiles.
* Also for github actions
* Update dependabot.yml
* Fix urls.py for new versions of Django
* Fix urls.py for postorius.
* Bump dependency on Postgresql.
* Bump dependency on Django
* Add dependency on tzdata.
* Fix typos and use consistent YAML data structures for env
* Add Debug flag and more structure to the README
* Clarify default value of MM_HOSTNAME
* Fix typo
* Fix typos
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
Even though the 'master.lck' is supposed to prevent race conditions, it needs to
be manually removed if the container did not shutdown gracefully. Remove the
manual check for the lock file and force mailman to remove it.
Also, set the stop_grace_period to 30s, which would allow Core to stop
gracefully and not leave the lock file over. Default value in case of Docker is 10s.
I want to be able to distribute docker-compose.yaml without any dependencies. In
order to do that, I should make it pull stable images from hub.docker.com
instead of trying to build them locally. This will avoid users running untested
code from the github repo instead of using the tested version on docker hub.
- Add hostnames to the container.
- Add a custom bridge network so that the containers and the host can have
a static IP and that can be added in the configurations.
- Assign static IPs to all the containers in the new default configuration.
- 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.
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.