1. Mailcow
Source: Tony Teaches Tech Mailcow docker configuration
To host your own mail server is not like hosting any other application. Why you might ask ? Well this has to do with spam and lots of it and also internet service providers blocking port 25 on which your mail is running on.
Butwell, we will show how to run your own mail server regardless since it is great for learning purposes and you can have as many email addresses as you want. You don't need to pay a monthly subscription for every email address. Imagine you want x email addresses for all of your contributors then that is x times the yearly price to host an email .That can get expensive really quick.
Public IP address of your email server
Public IP address of your email server