Spring Boot电子邮件微服务无法在群集模式下工作

时间:2020-02-23 12:56:08

标签: spring spring-boot docker docker-swarm

我有一个配置了Spring Boot + Email的微服务。

我有一个问题,我可以在虚拟机中直接将电子邮件微服务部署到docker,它可以连接到我的电子邮件并将电子邮件发送到不同的收件箱。

但是,一旦我以docker群模式在相同的VM上部署了相同的微服务,该微服务就不会连接到我的电子邮件,因此无法发送电子邮件。微服务无法解析电子邮件主机并给出超时异常。我需要更改什么才能使连接发生?

我的docker-compose.yml文件:

version: '3'
services:
  email-api:
    image: xxx/email-api:1.0.0
    ports:
      - "8081:8080"
    environment:
      - EUREKA_SERVER=http://192.168.99.105:8761/eureka
    networks:
      - network-eureka
    deploy:
      mode: replicated
      replicas: 1
      update_config:
        parallelism: 2
        delay: 10s
      restart_policy:
        condition: on-failure
        delay: 5s
        max_attempts: 3
        window: 120s
      placement:
        constraints: [node.role == worker]

networks:
  network-eureka:

volumes:
  mongo_email_data:
    external: true

以下是尝试连接时的日志文件:

dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    | 2020-02-24 19:14:27.409 TRACE 1 --- [nio-8080-exec-1] com.sun.mail.util.socket                 : connection failed
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    | java.net.UnknownHostException: mail.nguni52.co.za
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:184) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at java.net.Socket.connect(Socket.java:589) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at java.net.Socket.connect(Socket.java:538) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at com.sun.mail.util.SocketFetcher.createSocket(SocketFetcher.java:359) [javax.mail-1.6.2.jar!/:1.6.2]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at com.sun.mail.util.SocketFetcher.getSocket(SocketFetcher.java:238) [javax.mail-1.6.2.jar!/:1.6.2]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at com.sun.mail.smtp.SMTPTransport.openServer(SMTPTransport.java:2175) [javax.mail-1.6.2.jar!/:1.6.2]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:740) [javax.mail-1.6.2.jar!/:1.6.2]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at javax.mail.Service.connect(Service.java:366) [javax.mail-1.6.2.jar!/:1.6.2]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.mail.javamail.JavaMailSenderImpl.connectTransport(JavaMailSenderImpl.java:517) [spring-context-support-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSenderImpl.java:436) [spring-context-support-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:360) [spring-context-support-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:377) [spring-context-support-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderImpl.java:365) [spring-context-support-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at com.antech.broker.crm.email.service.EmailService.sendNewUserEmail(EmailService.java:174) [classes!/:1.0.0]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at com.antech.broker.crm.email.controller.EmailController.sendNewUserEmail(EmailController.java:177) [classes!/:1.0.0]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_111]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) [spring-web-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) [spring-web-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104) [spring-webmvc-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) [spring-webmvc-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) [spring-webmvc-5.1.7.RELEASE.jar!/:5.1.7.RELEASE]
dev-broker_brokercrm-email-api.1.r0dl707sue42@local-broker-swarm-3    |     at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) [spring-webmvc-5.1.7.RELEASE.jar!/:5.1.7.RELEAS

0 个答案:

没有答案
相关问题