I provide the actual server address to the verify's options. Don't know whether this is the suggested answer from Loopback, but this works for me.
var options = {
type: 'email',
to: 'xxxxx',
subject: 'Thanks for registering.',
template: path.resolve(__dirname, '../../server/views/verify.ejs'),
protocol: process.env.PROTOCOL || 'http',
port: process.env.DISPLAY_PORT || 3000,
host: process.env.HOSTNAME || 'localhost',
redirect: '/verified',
};