我目前有两个Docker容器正在运行:
1-正在运行大厅ci
2-正在运行arifactory
两个容器都在同一个docker网络中。
在汇合中,我使用神器资源如下:
Caused by: org.jboss.weld.context.ContextNotActiveException: WELD-001303: No active contexts for scope type javax.enterprise.context.SessionScoped
at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:689)
at org.jboss.weld.bean.ContextualInstanceStrategy$DefaultContextualInstanceStrategy.getIfExists(ContextualInstanceStrategy.java:90)
at org.jboss.weld.bean.ContextualInstanceStrategy$CachingContextualInstanceStrategy.getIfExists(ContextualInstanceStrategy.java:165)
at org.jboss.weld.bean.ContextualInstance.getIfExists(ContextualInstance.java:63)
at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:83)
at org.jboss.weld.bean.proxy.ProxyMethodHandler.getInstance(ProxyMethodHandler.java:125)
at com.SessionController$Proxy$_$$_WeldClientProxy.getSomething(Unknown Source)
at com.TestController.lambda$3(TestController.java:33)
at com.TestController.lambda$5(TestController.java:38)
at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1374)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.ForEachOps$ForEachTask.compute(ForEachOps.java:291)
at java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:731)
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
这里的重要部分是端点。我在这里使用docker容器的名称。我也尝试过网络别名,但这两个选项都不起作用。园区容器无法解析docker主机名。
当我输入Artifactory docker容器的ip时它可以工作。但重启容器时可能会发生这种情况。
有人知道如何解决花园容器内的Docker名称吗? Docker使用哪个dns服务器来解析容器名称?
编辑:当我进入大厅的docker容器时,我可以使用容器名称来ping工件容器。但是大厅工作在花园容器中运行。我认为问题是花园容器无法解析泊坞容器名称 -
亲切的问候, Ĵ