我试图从一个通过register365运行express的docker容器发送一些电子邮件。带有Docker的Nodemailer
这是所使用的代码
export class Emailer {
transporter: nodemailer.Transporter;
constructor() {
this.transporter = nodemailer.createTransport(smtpTransport({
host: 'smtp.reg365.net',
auth: {
user: 'myuser',
pass: mypassword'
}
}));
}
public async sendEmail(to,body) {
try {
return await this.transporter.sendMail({to,from: '"TEST" <[email protected]>',text: body, subject: ' WE NEED THE CONTENT AND DESIGN OF THIS EMAIL!!!!'});
}
catch(error) {
console.log('Email error');
console.dir(error);
}
}
}
这是所有工作的罚款,如果我跑快递与故宫的开始,但如果我和搬运工运行它,它会失败,此错误Error: Connection closed
它只是失败使用smtp.reg.356.net,如果我使用的是Gmail,它会很好地工作
这是我使用
FROM node:8
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
RUN npm install -g nodemon
COPY package.json /usr/src/app/
RUN npm install
COPY ./dist /usr/src/app/dist
EXPOSE 3005
EXPOSE 25
CMD [ "npm", "start" ]
泊坞窗文件
非常感谢。
编辑: 按照要求,在运行Telnet smtp.reg365.net 25返回猫/etc/resolv.conf中的主机
domain Hitronhub.home
nameserver 89.101.160.5
nameserver 89.101.160.4
这个telnet: could not resolve smtp.reg.356.net/25: Name or service not known
输出在泊坞窗容器
search hitronhub.home
nameserver 127.0.0.11
options ndots:0
启动容器并进入bash shell。执行命令'telnet smtp.reg.356.net 25'并在问题 –
完成后输出,这是输出telnet:无法解析smtp.reg.356.net/25:名称或服务未知。谢谢 – troyz
主机上和docker容器内还有一个'cat/etc/resolv.conf'。很可能这是你需要的DNS设置。一旦我确认问题 –