微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ubuntu – 从Docker容器发送邮件的简单方法?

我有一个在Docker容器内运行的备份脚本,我希望它在磁盘使用率低时向我发送电子邮件.

这是脚本:

#!/bin/bash
CURRENT=$(df /data | grep / | awk '{ print $5}' | sed 's/%//g')
THRESHOLD=90

echo "$CURRENT"

if [ "$CURRENT" -gt "$THRESHOLD" ] ; then
    echo "Low disk Space Alert: ${CURRENT}% used"
  mail -s 'disk Space Alert' olalonde@gmail.com << EOF
Backup server remaining free space is critically low. Used: $CURRENT%
EOF
fi

问题是我无法让邮件在容器内工作.这是我的Docker文件

FROM ubuntu:latest
MAINTAINER olalonde@gmail.com
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && \
  apt-get install -y postfix && \
  apt-get install -y mailutils && \
  apt-get clean
ADD rootfs /
CMD /disk-alert.sh

我尝试过一些事情,但我能做的最好的事情就是让邮件命令完成而不会出错(尽管我的电子邮件中没有收到任何内容).

是否有一种简单的方法来配置我的容器以便能够发送邮件?只要收到邮件,我就不在乎邮件垃圾邮件了.

正如Jason已经提到的,我认为将MTA和备份容器分开确实更加清晰.

我前段时间遇到过这个问题(虽然我试图从PHP而不是bash发送邮件),我发现了exim-sender容器,它基本上是一个简单的容器,充当外发SMTP服务器.

为什么不将备份容器链接到这样的SMTP容器?如果您是use ssmtp,则可以通过SMTP容器发送邮件.或者,如果您愿意,也可以使用其他(外部)SMTP服务器.

原文地址:https://www.jb51.cc/ubuntu/348016.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐