我有一个Play应用程序,默认运行(由sbt提供)docker base image。我想将此应用程序切换为基于阿尔卑斯山的图像。
每sbt-native-packager docs,我添加了
enablePlugins(AshScriptPlugin)
dockerBaseImage := "openjdk:8-jre-alpine"
到我的build.sbt
文件。当我尝试运行此容器时,出现以下错误:
bin/foo-service: line 51: /opt/docker/lib/foo-service.foo-service-1.0.40-launcher.jar: Permission denied
bin/foo-service: line 56: is_cygwin: not found
Unrecognized option: -J-Xms512M
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
答案 0 :(得分:0)
跟踪此问题已经存在问题。问题是由于在bash脚本附加功能中添加了一些非ash兼容的东西。
https://github.com/sbt/sbt-native-packager/issues/1118
建议的一个解决方法(https://github.com/sbt/sbt-native-packager/issues/978#issuecomment-313393423)是将其添加到您的build.sbt
bashScriptExtraDefines := List(
"""addJava "-Duser.dir=$(realpath "$(cd "${app_home}/.."; pwd -P)")""""
)