【发布时间】:2021-11-28 08:30:55
【问题描述】:
我正在尝试从 Docker 运行 Supervisord,但在使用 -javaagent 参数运行 Java 时遇到问题。它给出了以下错误
Error opening zip file or JAR manifest missing : /usr/apps/executor.jar
如果我简单地省略 -javaagent,它会起作用。
我尝试了以下选项,但仍然出现同样的错误
"-javaagent:/usr/apps/executor.jar"
-javaagent:"/usr/apps/executor.jar"
//Supervisor.conf
[supervisord]
nodaemon = true
user = root
loglevel = debug
[program:helloworld]
user = root
directory = /usr/apps
# this one will work
# command = /usr/bin/env java -jar /usr/apps/HelloWorld.jar
# this one will NOT work
command = /usr/bin/env java -javaagent:"/usr/apps/executor.jar" -jar /usr/apps/HelloWorld.jar
# this one will NOT work
#command = /usr/bin/env java "-javaagent:/usr/apps/executor.jar" -jar /usr/apps/HelloWorld.jar
# this one will NOT work
#command = /usr/bin/env java -javaagent:/usr/apps/executor.jar -jar /usr/apps/HelloWorld.jar
// Docker 文件
FROM openjdk:11
USER root
COPY ./HelloWorld.jar /usr/apps/HelloWorld.jar
CMD ["/usr/bin/supervisord","-n"]
感谢任何帮助以使其正常工作...
【问题讨论】:
-
您的第一条错误消息涉及
dd-java-agent.jar,示例有/usr/apps/executor.jar。哪一个?它实际上在容器中可用吗? -
对不起,在发布问题时,我重命名了该部分,但没有重命名所有...更新了问题
-
好的。您没有显示将
/usr/apps/executor.jar添加到 docker 容器中的位置。应该已经在openjdk:11中了吗?如果没有,您需要COPY加入。 -
我没有那个副本。稍后让我尝试一下,如果它解决了问题,我会在这里更新并很乐意接受它作为答案。
-
完成 :) 很高兴我能帮上忙。
标签: supervisord