Docker-compose and Java



我对开发世界很陌生,目前正在学习。我正在尝试启动一个docker-compose文件与kafka和特定的应用程序,与它交互,下面的教程之一。它需要用以下参数启动java jar:

java -Dcom.sun.management.jmxremote.port=5555 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-jar build/libs/kafka-streams-scaling-all.jar

问题是-我如何运行多行命令与选项?我试过这样做:

autoscaling:
exec:
command:
- java
- |
-Dcom.sun.management.jmxremote.port=5555 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-jar build/libs/kafka-streams-scaling-all.jar

但是它返回in "./docker-compose.yml", line 75, column 9 could not find expected ':' in "./docker-compose.yml", line 76, column 9

和网上的一些答案建议使用>标记:

autoscaling:
exec:
command: >
java -Dcom.sun.management.jmxremote.port=5555 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-jar build/libs/kafka-streams-scaling-all.jar

但是docker似乎不理解"-"部分命令expected <block end>, but found '-' in "./docker-compose.yml", line 74, column 7

在docker-compose文件中运行带有选项的java jar的最佳方法是什么?

缩进错误

<service_name>:
command: |
java 
-Dcom.sun.management.jmxremote.port=5555 
-Dcom.sun.management.jmxremote.authenticate=false 
-Dcom.sun.management.jmxremote.ssl=false 
-jar build/libs/kafka-streams-scaling-all.jar

最新更新