首页 > 解决方案 > 自定义锁在 Docker 中不起作用

问题描述

我已经开发了基于 Socket 的锁定,如果我部署 karaf 非 Docker 环境,这可以完美运行,但是当我在 docker 中尝试这个时,它没有显示任何内容。事实上,如果我在调试模式下开始,下面的行不会打印

DEBUG | Karaf Lock Monitor Thread | Main                             |  -  -  | Waiting for the lock ... 

非Docker部署调试日志

un 28, 2018 11:52:07 AM org.apache.karaf.main.Main launch 
INFO: Installing and starting initial bundles 
Jun 28, 2018 11:52:07 AM org.apache.karaf.main.Main launch 
INFO: All initial bundles installed and set to start 
2018-06-28T11:52:08,652 | INFO  | Karaf Lock Monitor Thread | SocketLock                       |  -  -  | in override lock() method 
2018-06-28T11:52:08,662 | INFO  | Karaf Lock Monitor Thread | SocketLock                       |  -  -  | in override isAlive() method 
2018-06-28T11:52:08,663 | DEBUG | Karaf Lock Monitor Thread | Main                             |  -  -  | Waiting for the lock ... 
2018-06-28T11:52:08,703 | DEBUG | CM Configuration Updater (Update: pid=org.ops4j.pax.url.mvn) | mvn                              | 4 - org.ops4j.pax.url.mvn - 2. 
5.4 | ServiceEvent REGISTERED - [org.ops4j.pax.url.mvn.MavenResolver] - org.ops4j.pax.url.mvn 
2018-06-28T11:52:08,706 | DEBUG | CM Configuration Updater (Update: pid=org.ops4j.pax.url.mvn) | mvn                              | 4 - org.ops4j.pax.url.mvn - 2. 
5.4 | ServiceEvent REGISTERED - [org.osgi.service.url.URLStreamHandlerService] - org.ops4j.pax.url.mvn 
2018-06-28T11:52:08,716 | DEBUG | pool-2-thread-2  | core                             | 10 - org.apache.karaf.features.core - 4.1.5 | ServiceEvent REGISTERED - [o 
rg.osgi.framework.hooks.resolver.ResolverHookFactory] - org.apache.karaf.features.core 

以下是我在 Docker 中启动 karaf 时的日志

Jun 28, 2018 11:33:56 AM org.apache.karaf.main.Main launch 
INFO: Installing and starting initial bundles 
Jun 28, 2018 11:33:56 AM org.apache.karaf.main.Main launch 
INFO: All initial bundles installed and set to start 
2018-06-28T11:33:57,166 | DEBUG | FelixStartLevel  | core                             | 10 - org.apache.karaf.features.core - 4.1.5 | BundleEvent STARTED - org.apach 
e.karaf.features.core 
2018-06-28T11:33:57,181 | DEBUG | FelixDispatchQueue | Main                             |  -  -  | Start level change complete. 
2018-06-28T11:33:57,182 | DEBUG | FelixDispatchQueue | framework                        | 0 - org.apache.felix.framework - 5.6.10 | FrameworkEvent STARTLEVEL CHANGED 
 - org.apache.felix.framework 
2018-06-28T11:33:57,516 | DEBUG | CM Configuration Updater (Update: pid=org.ops4j.pax.url.mvn) | mvn                              | 4 - org.ops4j.pax.url.mvn - 2.5.4 
 | ServiceEvent REGISTERED - [org.ops4j.pax.url.mvn.MavenResolver] - org.ops4j.pax.url.mvn 
2018-06-28T11:33:57,520 | DEBUG | CM Configuration Updater (Update: pid=org.ops4j.pax.url.mvn) | mvn                              | 4 - org.ops4j.pax.url.mvn - 2.5.4 
 | ServiceEvent REGISTERED - [org.osgi.service.url.URLStreamHandlerService] - org.ops4j.pax.url.mvn 
2018-06-28T11:33:57,532 | DEBUG | pool-2-thread-2  | core                             | 10 - org.apache.karaf.features.core - 4.1.5 | ServiceEvent REGISTERED - [org. 
osgi.framework.hooks.resolver.ResolverHookFactory] - org.apache.karaf.features.core 
2018-06-28T11:33:57,536 | DEBUG | pool-2-thread-2  | core                             | 10 - org.apache.karaf.features.core - 4.1.5 | ServiceEvent REGISTERED - [org. 
osgi.framework.hooks.bundle.CollisionHook] - org.apache.karaf.features.core 

标签: apache-karafkaraf

解决方案


由于 karaf 锁不起作用,我的自定义锁定代码抛出了一些错误,我只是尝试捕获异常,现在它正在工作。


推荐阅读