Tag: scala

sbt-native-packager是可以使用本地文件系统泊坞窗图像作为基础图像

目前使用的是sbt-native-packager v 1.2.1,默认情况下使用openjdk基本的docker镜像,如http://www.scala-sbt.org/sbt-native-packager/formats/docker.html 环境设置 “dockerBaseImage用作运行应用程序的基础的映像,它应该在chown,mkdir的path中包含二进制文件,有一个可发现的java二进制文件,并包含由daemonUser(默认情况下,守护进程)configuration的用户。 我想知道是否有可能从文件系统使用本地映像而不是简单地指向“./my-Dockerfile”之类的东西?

'sbt〜run'显示它正在重新编译,但没有可见的更改

我和斯卡拉是相当新的,我正面临一个小问题。 我用scala(和其他所有)设置基于docker的虚拟机。 我的代码通过卷被泄漏。 当我跑步 sbt ~run 第一次,所有的东西都被编译和工作。 但是,当我做任何代码更改时,日志显示代码正在重新编译,但我没有看到我正在工作的应用程序的任何更改。 如果我完全重新启动“sbt”,则会发生变化。 这可能是什么原因? 我确定我只运行一个'sbt'的实例: # ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.3 48828 6900 ? Ss 17:16 0:01 /usr/bin/python /usr/bin/supervisord -c /etc/supervisor/conf.d/supervisord.conf root 8 0.0 0.1 19752 2792 ? Ss 17:18 0:00 bash root 23 0.0 0.1 47588 […]

debuggingDocker应用程序使用SBT Native Packager构build

我试图debugging我的Scala.js应用程序的服务器。 我使用SBT Docker插件生成Dockerfile和SBT Native Packager来构build应用程序。 我想使用IntelliJ的debugging器,所以我已经configuration它进行远程debugging。 看下面的截图:

无法连接到Docker实例中的HBase

我创build了一个在Docker容器上运行的HBase实例。 我已经能够使用Docker容器的bash shell从HBase Shell中创build一个表,并且能够从HBase Rest API访问它。 但是我无法使用Scala从Play框架访问它,我经常会遇到以下exception。 MasterNotRunningException |com.google.protobuf.ServiceException: java.net.UnknownHostException: unknown host: 238b057263fb 这是抛出exception的Scala代码。 val config = HBaseConfiguration.create() var hbaseRunning = false; config.clear config.set("hbase.zookeeper.quorum", "172.18.0.2"); // This ip Address was retrieved by doing a docker inspect on the docker container config.set("hbase.zookeeper.property.clientPort","2181") config.set("hbase.master", "172.18.0.2:60000"); config.setInt("timeout", 25000); try{ println(" Check if HBase is Running") HBaseAdmin.checkHBaseAvailable(config); // This […]

将一个jar提交到sequenceiq docker-spark容器

所以我从来没有使用过Spark或Docker,但是我必须将它用于一个项目。 我试图了解这是如何工作的。 所以我在Eclipse中构build了一个胖jar子,并希望将其提交给我使用此指南设置的docker容器: https : //github.com/sequenceiq/docker-spark 现在,我并不真正了解如何从我的本地系统中将我的jar包发送到docker容器,然后运行它。 我想我错过了这一切真的一起工作,但也许有人可以清除它。 我会非常感谢!

将所有SBT依赖项复制到本地文件夹

我正在dockerizing我的戏! 框架应用程序,目前,我的构build需要超过15分钟才能完成。 这个过程的很大一部分,实际上是下载依赖项,因为我的构build器没有caching的概念。 我想,将我的项目需要的所有依赖项复制到本地文件夹是一个好主意,因此它不必一次又一次地下载所有的依赖项。 但问题是,我不知道该怎么做? 我知道SBT有一个function,允许你指定一个本地回购,但我不知道一个function,让我把所有的东西都复制到某个文件夹。

为什么sbt-native-packager将bin / start作为目录而不是脚本?

我正在使用sbt-native-packager和sbt-docker来生成本教程中描述的Docker镜像。 Docker镜像不会运行(权限被拒绝),检查结果是bin/start被创build为一个空目录。 dan@cobalt:~/projects/confabulous/deva$ ls -l target/universal/stage/bin/ total 24 -rwxrw-r– 1 dan dan 11591 Aug 5 20:44 deva -rw-rw-r– 1 dan dan 6211 Aug 5 20:44 deva.bat drwxrwxr-x 2 dan dan 4096 Dec 31 1969 start 由于某种原因,它也有一个空的时间戳。 为什么它被创build为一个目录而不是一个shell脚本? 这是我的plugins.sbt: addSbtPlugin("com.timushev.sbt" % "sbt-updates" % "0.1.4") addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "0.7.4") addSbtPlugin("io.spray" % "sbt-revolver" % "0.7.1") addSbtPlugin("se.marcuslonnberg" % […]

你在哪里创build在Docker中运行的应用程序的日志?

你在哪里创buildDocker中运行的应用程序的日志,以便我可以稍后将它们映射到主机系统? 目前还不清楚我是否应该在没有root权限的情况下创build日志(然后是哪一个?),或者我可以chown我需要的目录。 我尝试使用/var/log/case和/opt/case/logs没有成功。 这是我缩小的SBT脚本 object build extends Build { lazy val root = Project( id = "case-server", base = file("."), settings = Defaults.coreDefaultSettings ++ graphSettings ++ Revolver.settings ++ Seq( version := "1.15", scalaVersion := "2.11.7", libraryDependencies ++= { val akkaV = "2.4.1" val akkaStreamV = "2.0.1" val scalaTestV = "2.2.5" Seq( "com.typesafe.scala-logging" %% "scala-logging-slf4j" % […]

在尝试通过sbt构build项目时,Docker中超出了GC开销限制

我正在尝试在Docker容器中构buildsbt项目并收到此类错误: java.lang.OutOfMemoryError:超出GC开销限制 系统规格: 操作系统osx + boot2docker(8个虚拟机的RAM) docker集装箱内的Ubuntu 15.10 Oracle java 1.7或Oracle java 1.8或OpenJdk 1.8 斯卡拉版本2.11.6 sbt版本0.13.8 它只有在运行docker build w / Dockerfile时才会失败 。 如果我通过logging到容器手动执行它,它会生成项目W / Oexception。 OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=1G; support was removed in 8.0 sbt appears to be exiting abnormally. The log file for this session is at /tmp/sbt4972348477806548245.log java.lang.OutOfMemoryError: GC […]

用sbt-native-packager的docker支持添加/复制文件

我正在使用sbt-native-packager 1.0.0-M5创build我的泊坞窗图像。 我需要添加一个不是源文件或资源文件夹的文件。 我的docker命令如下: dockerCommands := Seq( Cmd("FROM", "myrepo/myImage:1.0.0"), Cmd("COPY", "test.txt keys/"), // <– The failing part Cmd("WORKDIR", "/opt/docker"), Cmd("RUN", "[\"chown\", \"-R\", \"daemon\", \".\"]"), Cmd("USER", "daemon"), ExecCmd("CMD", "echo", "Hello, World from Docker") ) 它失败: msg="test.txt: no such file or directory" 所以挖了一下后,似乎我需要在target/docker/stage test.txt 。 然后它工作。 但是,我怎样才能自动得到它呢? 该文件实际上在项目的根文件夹中。