0

根据文档,新用户在注册时应该会收到来自 Acumos 的电子邮件验证电子邮件。在我们新部署的 Acumos 实例上,情况并非如此。我已经验证在安装了 Acumos 的 Ubuntu 16.04 服务器 VM 中使用mail -s "Test mail setup" xxxxx@gmail.com (CLI 命令)可以正常工作。关于可能是什么问题的任何提示?

我还尝试使用“忘记密码”功能来查看是否会触发电子邮件的发送和接收,但它也不起作用。尽管如此,新用户仍然可以登录。

更新

收到评论后,我在 AIO/docker/acumos/portal-be.yml 中添加了建议的邮件 (smtp) 条目。然后,我使用来自 AIO 文件夹的命令bash docker-compose.sh up -d --build portal-be-service重新创建了 portal-be 服务。docker-compose 命令重新生成 Docker 映像(使用新配置)并再次启动它。我现在可以从 Acumos 门户收到电子邮件 :-)

            \"portal\": {
               \"feature\": {
                  \"publishSelfRequestEnabled\": \"false\",
                  \"validateModel\": \"false\",
                  \"email_service\": \"smtp\",

……

            \"spring\": {
               \"mail\" : {
                  \"host\" : \"smtphost.tele.no\",
                  \"port\" : 25,
                  \"username\" : \"arneme\",
                  \"password\" : \"xxxxxxxx\",  # Real password removed and substituted with xxxxxxxx (do not want to disclose password on stackoverflow)
                  \"debug\" : \"true\",
                  \"smtp\" : {
                     \"starttls\" : {
                        \"enable\" : \"true\"
                     },
                     \"auth\" : \"false\"
                  },
                  \"transport\" : {
                     \"protocol\" : \"smtp\"
                  },
                  \"template\" : {
                     \"folder\" : {
                        \"path\" : \"/fmtemplates/\"
                     }
                  }
               }
            },    
4

3 回答 3

0

我相信这里的关键配置项是 portal-be 块中的“email_service”项。如果没有配置电子邮件服务,那么它可能无法正常工作。我们的测试实验室使用服务类型“mailjet”,如果您深入了解该 docker-compose 配置,您将看到 mailjet 配置键。

"portal" : {
    "feature" : {
       "email_service" : "",
       ...

更新 1:我们的门户专家提供了配置详细信息,因此您可以使用“smtp”作为 email_service 的值,如下所示:

"portal" : {
    "feature" : {
       "email_service" : "smtp",
       ...

您需要正确配置它。我引用:

这是 smtp 属性设置示例

"spring" : {
    "mail" : {
        "host" : "PROVIDE YOUR HOSTNAME",
        "port" : 25,
        "username" : "PROVIDE YOUR USERNAME",
        "password" : "PROVIDE YOUR PASSWORD",
        "debug" : "true",
            "smtp" : {
                "starttls" : {
                    "enable" : "true"
                },
                "auth" : "false"
            },
            "transport" : {
                 "protocol" : "smtp"
            },
            "template" : {
                "folder" : {
                    "path" : "/fmtemplates/"
                }
            }
        }
    },

此配置片段必须通过部署配置(无论是 docker-compose 还是 K8S)合并到 SPRING_APPLICATION_JSON 环境变量中设置的较大块中。

更新 2:尝试更正您的条目,这就是它们应该是的。第一:

      \"portal\": {
           \"feature\": {
              \"publishSelfRequestEnabled\": \"false\",
              \"validateModel\": \"false\",
              \"email_service\": \"smtp\",

第二个:

    \"spring\": {
           \"mail\" : {
              \"host\" : \"smtphost.tele.no\",
              \"port\" : 25,
              \"username\" : \"arneme\",
        ....
于 2019-03-08T14:33:17.310 回答
0

注册/提醒邮件过程取决于 Portal-BE 的一些 Spring 环境配置值和发送电子邮件的外部邮件服务帐户。一旦您设置了这些值,您将需要重新启动 Portal-BE 服务,例如使用“sudo docker-compose.sh up -d --build portal-be-service”(假设您正在使用 AIO 工具集并且在文件夹 AIO/docker)。AIO 工具的这一部分正在发展,因此上面的命令可能与您使用的版本略有不同,例如“sudo docker-compose.sh $AIO_ROOT up -d --build portal-be-service”,其中 $AIO_ROOT 是AIO 文件夹的路径。

我没有使用我自己的邮件服务进行验证,但我知道它可以工作,因为它在我们的内部开发环境中正确设置。env 变量在 Portal-BE 的 docker/kubernetes 模板中的 SPRING_APPLICATION_JSON env 参数下设置。支持的邮件服务是“mailjet”和“smtp”。以下示例适用于 mailjet ( https://www.mailjet.com/ )。

       SPRING_APPLICATION_JSON: '{
            "portal" : {
               "feature" : {
                  "email_service" : "mailjet",
               "mailjet" : {
                  "api" : {
                     "key" : "<your API key>"
                  },
                  "secret" : {
                     "key" : "<your secret key>" 
                  },
                  "address" : {
                     "from" : "<your send-from email address>"
                  }
               },

以下示例适用于 SMTP:

       SPRING_APPLICATION_JSON: '{
            "spring" : {
               "mail" : {
                  "host" : "Provide the hostname",
                  "port" : 25,
                  "username" : "username",
                  "password" : "password",
                  "debug" : "true",
                  "smtp" : {
                     "starttls" : {
                        "enable" : "true"
                     },
                     "auth" : "false"
                  },
                  "transport" : {
                     "protocol" : "smtp"
                  },
                  "template" : {
                     "folder" : {
                        "path" : "/fmtemplates/"
                     }
                  }
               }
            },
于 2019-03-08T15:59:34.557 回答
0

最后设法在 portal-be.yml 文件中正确配置邮件服务。“更新”中的配置示例是它需要的方式。我将后一部分放在“门户”部分而不是“弹簧”部分。

感谢大家的帮助!

于 2019-03-12T13:57:37.963 回答