Instance Setting Email [$PORTAL_URL$] token appends :8080 to the end of the virtual host. This is an issue for online trainings as we use this to send out student emails. Here are the steps I took to reproduce:
1. Go to Control Panel > Configuration > Instance Settings
2. Change the Virtual Host (I did training-11.liferay.com, for example).
3. Scroll down and open the Email Notifications section.
4. Use an email template using the [$PORTAL_URL$] token.
5. Test email by creating a new account (you can capture the email with fakeSMTP or something).
In my experience, I used this as the heading:
[$PORTAL_URL$]: Your New Account Information for Liferay Fundamentals 7.0 Online
And it translated to something like this:
http://training-11.liferay.com:8080: Your New Account Information for Liferay Fundamentals 7.0 Online