自动启动,我要两个单独的JAR文件一旦码头工人容器通过运行命令调用自动被执行,所以当我输入docker run mycontainer
它们都调用。到目前为止,我有一个如下所示的dockerfile:如何有两个JAR的“泊坞窗运行容器”
# base image is java:8 (ubuntu)
FROM java:8
# add files to image
ADD first.jar .
ADD second.jar .
# start on run
CMD ["/usr/lib/jvm/java-8-openjdk-amd64/bin/java", "-jar", "first.jar"]
CMD ["/usr/lib/jvm/java-8-openjdk-amd64/bin/java", "-jar", "second.jar"]
但是,这只会启动second.jar。
现在,这两个罐子都是在一个循环的服务器,所以我想,一旦一个开始,它只是块的终端。如果我使用run -it mycontainer bash
运行容器并手动调用它们,则第一个将执行其输出,而我无法启动另一个。
有没有办法打开不同的终端,并在它们之间切换,以在其自己的上下文中的每个JAR运行?最好已经在dockerfile中。
我完全不知道Ubuntu的情况,但是我找到了打开一个新终端的xterm
命令,但是在调用JAR之后这个命令不起作用。我正在寻找的是dockerfile内部的说明,例如打开一个新的终端,执行first.jar,alt-tab到旧的终端并在那里执行second.jar,或者至少实现相同的目的。
谢谢!
感谢,脚本解决方案正是我一直在寻找。目前工作没有问题!我也看了一下,以防万一什么事情发生。 – buggy
很好听! 我添加了一个例子,你如何设置phusion来启动两个罐子作为单独的“服务”。 – craeckie