我试图在我的docker容器中一个接一个地运行两个Java应用程序。在我的dockerfile中,我指定了invoker.sh作为入口点。
ENTRYPOINT ["sh", "/opt/invoker.sh"]
然后,我使用此脚本运行两个jar文件。
#!/bin/sh
java -jar loader.jar
java -jar service.jar
但这不起作用。它给
错误:无法访问jarfile javaimpl-loader.jar
并且仅执行service.jar。当我尝试echo $(ls)它表明这两个jar文件都在那里。
但是如果我将脚本更改为
#!/bin/sh
echo $(java -jar loader.jar)
java -jar service.jar
然后两个罐子都起作用。为什么我不能使用第一个脚本。关于此问题的任何帮助。
问题来源:Stack Overflow
似乎第一个示例被视为一行,您可以使用它。另外,我宁愿bash到/bin/sh。喜欢,
#!/usr/bin/env bash
java -jar loader.jar && java -jar service.jar
回答来源:Stack Overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。