lmenezes / cerebro

MIT License
5.51k stars 714 forks source link

docker-cerebro volumes /opt/cerebro/conf start container error #380

Open flylihaoooo opened 5 years ago

flylihaoooo commented 5 years ago

it is my command: docker run -d --name=cerebro -p 9102:9000 -v /data/docker/cerebro/conf:/opt/cerebro/conf lmenezes/cerebro

error:

WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.google.inject.internal.cglib.core.$ReflectUtils$1 (file:/opt/cerebro/lib/com.google.inject.guice-4.2.2.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) WARNING: Please consider reporting this to the maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Oops, cannot start the server. com.google.inject.CreationException: Unable to create injector, see the following errors:

1) No implementation for play.api.db.slick.DatabaseConfigProvider was bound. while locating play.api.db.slick.DatabaseConfigProvider for the 1st parameter of dao.RestHistoryDAOImpl.(RestHistoryDAO.scala:29) at dao.RestHistoryDAO.class(RestHistoryDAO.scala:1) while locating dao.RestHistoryDAO for the 4th parameter of controllers.RestController.(RestController.scala:18) while locating controllers.RestController for the 4th parameter of router.Routes.(Routes.scala:97) at play.api.inject.RoutesProvider$.bindingsFromConfiguration(BuiltinModule.scala:123): Binding(class router.Routes to self) (via modules: com.google.inject.util.Modules$OverrideModule -> play.api.inject.guice.GuiceableModuleConversions$$anon$4)

1 error at com.google.inject.internal.Errors.throwCreationExceptionIfErrorsExist(Errors.java:543) at com.google.inject.internal.InternalInjectorCreator.initializeStatically(InternalInjectorCreator.java:159) at com.google.inject.internal.InternalInjectorCreator.build(InternalInjectorCreator.java:106) at com.google.inject.Guice.createInjector(Guice.java:87) at com.google.inject.Guice.createInjector(Guice.java:78) at play.api.inject.guice.GuiceBuilder.injector(GuiceInjectorBuilder.scala:186) at play.api.inject.guice.GuiceApplicationBuilder.build(GuiceApplicationBuilder.scala:139) at play.api.inject.guice.GuiceApplicationLoader.load(GuiceApplicationLoader.scala:21) at play.core.server.ProdServerStart$.start(ProdServerStart.scala:57) at play.core.server.ProdServerStart$.main(ProdServerStart.scala:29) at play.core.server.ProdServerStart.main(ProdServerStart.scala)

nikfot commented 5 years ago

I get the same warnings without the error message at the end. After running: docker run -p 9000:9000 lmenezes/cerebro

I get:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.google.inject.internal.cglib.core.$ReflectUtils$1 (file:/opt/cerebro/lib/com.google.inject.guice-4.2.2.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain)
WARNING: Please consider reporting this to the maintainers of com.google.inject.internal.cglib.core.$ReflectUtils$1
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[info] play.api.Play - Application started (Prod) (no global state)
[info] p.c.s.AkkaHttpServer - Listening for HTTP on /0:0:0:0:0:0:0:0:9000

Cerebro goes up , but I cannot connect to any ES instance.

vyarovoy commented 3 years ago

Hi guys,

With new env variable I defined it finally started without any warning or error. Here is variable

JAVA_OPTS: --add-opens java.base/java.lang=ALL-UNNAMED

along with original discussion around it

But I still can't login - simply have no idea what is node URL. For example with 0.0.0.0:9000 or 9200 I see just nothing in pod logs. But with localhost:9000 or 9200 pod logs appear to be fed well.

@nikfot are you intentionally do it non-IPv4 way by having Listening for HTTP on /0:0:0:0:0:0:0:0:9000 ? Just unsure if this tool was developed with IPv6 support in mind.....