当前位置: 首页 > 知识库问答 >
问题:

sbt-native-packager scala play dockerfile未按默认配置运行

祁嘉木
2023-03-14

我正在尝试使用sbt-native-packager生成Scala play应用程序的Docker映像,我遵循了http://www.scala-sbt.org/sbt-native-packager/formats/Docker.html中描述的步骤

这是我的配置:

// SBT Native
addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.2.1")
.enablePlugins(PlayScala, JavaAppPackaging)

我还添加了一些额外的属性:

javaOptions in Universal ++= Seq(
  // JVM memory tuning
  "-J-Xmx1024m",
  "-J-Xms512m",

  // Since play uses separate pidfile we have to provide it with a proper path
  // name of the pid file must be play.pid
  s"-Dpidfile.path=/var/run/${packageName.value}/play.pid",

  // Use separate configuration file for production environment
  s"-Dconfig.file=/usr/share/${packageName.value}/conf/production.conf",

  // Use separate logger configuration file for production environment
  s"-Dlogger.file=/usr/share/${packageName.value}/conf/logback.xml"
)

// exposing the play ports
dockerExposedPorts in Docker := Seq(9000, 9443)

然后使用插件和SBT CLI生成docker映像:

docker:publishLocal

dockerfile在./target/docker/dockerfile处生成

当我检查文件时,我看到:

FROM openjdk:latest
WORKDIR /opt/docker
ADD opt /opt
RUN ["chown", "-R", "daemon:daemon", "."]
USER daemon
ENTRYPOINT ["bin/root"]
CMD []

共有1个答案

蒋飞捷
2023-03-14

启动docker映像时的错误信息是什么,以及如何启动它?

还有一些值得注意的事情。

您不需要添加任何插件,而只需要配置docker相关的东西。您已经为包格式(docker)链接了正确的文档。

希望能有帮助,Muki

 类似资料:
  • 问题内容: 我正在尝试将我的应用程序升级到新版本的Firebase。我仔细阅读了设置指南,并编辑了所有代码以匹配新语法。但是,当我运行该应用程序时,出现了这两个错误。 我 在AppDelegate中,并将GoogleServices- Info.plist导入到我的项目中。plist也具有所有正确的信息。其他人遇到这个问题或知道如何解决? 问题答案: 这是您的问题的答案: 要配置Firebase,

  • 与Jquery Mobile自动初始化共同协作 Working with Jquery Mobile's Auto-initialization 不像其他的Jq项目,比如jq和jq ui,Jquery Mobile会在加载到增强特性时马上应用它(远早于document.ready事件发生时)。这些特性会基于Jquery Mobile的默认配置应用,是针对默认的情形设计的,他可能符合你的需求,也可能

  • 22.2.2 默认DispatcherServlet配置 如上一节中所述,对每种特殊的bean,DispatcherServlet都会维护一个默认可用的实现的列表。此信息保存在包org.springframework.web.servlet中的文件DispatcherServlet.properties中。 所有的特殊bean都有一些合理的默认值,虽然迟早您将需要对这些bean提供的一个或多个属性

  • 上一小节讲到,DispatcherServlet维护了一个列表,其中保存了其所依赖的所有bean的默认实现。这个列表保存在包org.springframework.web.servlet下的DispatcherServlet.properties文件中。 这些特殊的bean都有一些基本的默认行为。或早或晚,你可能需要对它们提供的一些默认配置进行定制。比如说,通常你需要配置InternalResou

  • 我使用jhipster版本7.6.0,这是我的CacheConfiguration类。 以下是redisson的依赖关系: 这是我的应用程序dev.yml: 一切都是由jHipster生成的,在安装redis 3.2.100版后,我遇到了以下异常: 顺便说一下,项目正在成功编译。 提前感谢您的帮助!

  • 这是我的配置文件: 日志配置文件读起来非常清楚,因为它使用my/log目录中定义的模式正确地写入。 这是我在代码中实例化它的方式: