Skip to content

getting started

Mathieu Tortuyaux edited this page Apr 11, 2020 · 2 revisions

Requirements:

  • docker
  • docker-compose
  • working internet connection 😉

Pull docker image

Docker images are built with Github Actions, to pull them, simply run:

$ git clone https://github.com/yulPa/yulmails.git
$ cd yulmails
$ docker-compose pull

You can directly go to start your services

Build yulmails image:

Choose your image tag but do not forget to update the docker-compose.yml 😉

$ git clone https://github.com/yulPa/yulmails.git
$ cd yulmails
$ docker build -t docker.pkg.github.com/yulpa/yulmails:latest .

Build spamassassin plugin image:

$ docker build -t docker.pkg.github.com/yulpa/yulmails/spamassassin:latest plugins/spamassassin

Start your services

docker-compose should start out of the box, without further configuration. compose will mount the conf/*.sample files in the associated services. If you want to modify options, you can edit this files. For now, we can use the default files.

$ docker-compose up -d queue-entrypoint
$ docker-compose up -d proxy api entrypoint worker-1 sender-1 spamassassin-plugin

You can now try to send your first email inside yulmails:

$ go run utils/sendmail.go

You may need to whitelist IP your Docker IP address in the DB, in order to find out your IP address:

$ docker-compose logs proxy
...
proxy                  | 2020/04/11 16:07:02 auth failed for 172.21.0.1
...
$ docker-compose exec api-database psql -U postgres yulmails
psql (9.6.15)
Type "help" for help.

yulmails=# insert into whitelist(ip) values ('172.21.0.1');

Now, you can inspect your logs to see the yulmails magic:

$ docker-compose logs worker-1

⬆️ you will see your logs from the spamassassin plugin analysis.

$ docker-compose logs sender-1

⬆️ you will see your email printed (it's the "sent" emulation)... Just the proof of concept that the email has been fetched and it is ready to be sent.

😉

Clone this wiki locally