无法使用Spring Boot和Docker连接到JMX

时间:2016-09-07 21:28:22

标签: docker spring-boot jmx spring-jmx

我有一个Spring Boot应用程序,容器化,在Docker Cloud中运行,具有以下JAVA_OPTS

-Xmx512m -XX:+UseConcMarkSweepGC -XX:NativeMemoryTracking=summary -Djava.rmi.server.hostname=127.0.0.1 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.rmi.port=1099 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

当我尝试使用jmc连接到主机时,我得到Unnable to connect。这是我使用的网址:

service:jmx:rmi:///jndi/rmi://api.name-sta.xxxx.svc.dockerapp.io:1099/jmxrmi

我也在容器中暴露了端口1099 我还能尝试什么?

修改

这就是我启动容器的方式:

Dockerfile:

FROM java:8
VOLUME /chathub
COPY target/chathub-backend-1.0.0.jar app.jar
RUN sh -c 'touch app.jar'
EXPOSE 8080
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Dspring.profiles.active=docker", "-jar","/app.jar"]

和Stackfile:

api:
  image: 'luizkowalski/chathub:qa'
  deployment_strategy: every_node
  environment:
    - DATABASE_PASSWORD=xxx
    - 'DATABASE_URL=xxx'
    - DATABASE_USERNAME=xx
    - 'JAVA_OPTS=-Xmx512m -XX:+UseConcMarkSweepGC -XX:NativeMemoryTracking=summary -Djava.rmi.server.hostname=127.0.0.1 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.rmi.port=1099        -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false'
    - MIXPANEL_TOKEN=xxx
  mem_limit: 258m
  ports:
    - '1099:1099'
    - '8080:8080'
  tags:
    - sta

0 个答案:

没有答案