Не может подключиться к JMX с помощью Spring Boot и Docker
У меня есть приложение 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
, Это URL, который я использую:
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"]
и файл стека:
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