x: Why would you do this?
y: Because one not enough?
I needed a way to test mail confirmation. When you are dealing with deb authentication you would like to be sure that this email exist. And usually I use is_email_confirmed column next to user credentials in the database table. Once user hits siging endpoint as last step I send an email with confirmation token.
I was looking on few popular tools across the Internet:
My requirements were: run in docker, easy to config, basic functionality to render email. All things above quite heavy apps with complex configuration. After that I found found nice and lightweight way how to test it locally.
I was doing hobby project, nothing special, server with authentication few endpoints and connection to database. I wrapped this project in docker to distribute project to another developer, he wanted to help with fronted but not that fluent at the backend part. Then I realized that my friend does not want to struggle with database setup and so on. So, solution was straight forward - docker-compose.
I prefer using .env instead of typing stuff to cli. I found out really elegant solution. You can still use .env and parse it easily with
github.com/caarlos0/env/v6, specify default values or even load file (certificates etc). But in docker-compose you need to specify same ports for database for example. Here comes github.com/joho/godotenv, if you provide environment variables via dockerfile or docker-compose it will override constants in your .env.