我正在创建一个Dockerfile来自定义名为jboss / wildfly的图像。我需要执行以下命令:
/opt/jboss/wildfly/bin/jboss-cli.sh --file=/opt/jboss/wildfly/bin/add-datasource.cli
该命令在我的主机上运行正常,当转换为Dockerfile时:
CMD ["/opt/jboss/wildfly/bin/jboss-cli.sh", "--file=","/opt/jboss/wildfly/bin/add-datasource.cli"]
返回以下错误:
'附加datasource.cli'假设是一个命令,但命令是 execute已由另一个参数指定:[ - file]
任何帮助?
答案 0 :(得分:1)
问题在于您正在使用的语法。您错误地拆分了--file=
。你需要:
CMD ["/opt/jboss/wildfly/bin/jboss-cli.sh", "--file=/opt/jboss/wildfly/bin/add-datasource.cli"]
或
CMD ["/opt/jboss/wildfly/bin/jboss-cli.sh", "--file", "/opt/jboss/wildfly/bin/add-datasource.cli"]
您指定的命令将解析为--file= /opt/...
,它不是有效的命令行。