用于运行enRoute OSGi框架的Docker镜像?

时间:2016-08-23 22:16:46

标签: osgi bnd bndtools enroute

我想尝试在Docker容器中运行enRoute,但似乎无法找到任何Docker镜像。任何人都可以建议图像的位置吗?

1 个答案:

答案 0 :(得分:3)

OSGi enRoute使用Bndtools。在那里,您可以将bndrun文件导出到可执行JAR(请参阅Base Tutorial,尤其是deploying)。因此,您只需要拥有Java 8映像。这是一项非常重要的任务,因为Oracle对其版权感到相当恼火,但有ggtools/java8图片。因此,要在Docker上运行OSGi enRoute可执行JAR,可以使用以下Dockerfile:

FROM                            ggtools/java8
MAINTAINER                      pkriens@gmail.com
CMD                             java -jar test.jar
ADD                             test.jar test.jar

然后您可以按如下方式构建和运行:

$ ls
Dockerfile  
test.jar          
$ docker build .
$ docker images
REPOSITORY                        TAG                 IMAGE ID            CREATED              SIZE
<none>                            <none>              491dc47dbee6        About a minute ago   174.8 MB
<none>                            <none>              0e3b6c01e0b6        5 weeks ago          176.2 MB
ubuntu                            latest              1c9b046c2850        7 months ago         187.9 MB
ggtools/java8                     latest              dcdcbb7229ba        8 months ago         168.5 MB
$ docker run 491dc47dbee6
Welcome to Apache Felix Gogo    
g! eval:eval 3+4+5+6+7+8+9
42.0

如果这对您有用,那么OSGi enRoute网站的应用说明将受到高度赞赏。