SBT本机打包程序不会将文件复制到Docker映像

时间:2018-07-17 08:42:21

标签: scala docker sbt sbt-native-packager

我有一个Akka SBT项目。它包含多个SBT子模块:

  • 常见包含resources/logback-prod.xml
  • 应用取决于其他两个子模块
  • postgres

我构建了该项目的docker映像。唯一不影响图像的命令是:

...
dockerPackageMappings in Docker += 
   ((resourceDirectory in Compile).value / "logback-prod.xml") -> "/opt/docker/conf/logback-prod.xml"
...

此行代码不会将logback-prod.xml common 子项目复制到docker /opt/docker/conf/路径

相反,它将通过我上面提到的路径创建一个名为“ logback-prod.xml”的目录。

我做错了什么?

2 个答案:

答案 0 :(得分:1)

通常,当您获得一个空目录而不是Docker中的文件时,这意味着源文件不存在。即在您的情况下,这可能意味着您的源路径错误。尝试复制具有绝对路径的文件,然后查看是否正确复制了文件。

答案 1 :(得分:1)

此行代码解决了问题:

mappings in Docker += (resourceDirectory in common in Compile).value / "logback-prod.xml" -> "/opt/docker/conf/logback-prod.xml",