如何使用sbt-native-packager设置Docker注册表

巴赫尔

我正在尝试使用sbt-native-packager和以下内容构建Docker映像build.sbt(尝试将映像发布到本地存储库)

val sparkVersion = "2.4.5"

scalaVersion in ThisBuild := "2.12.0"


val sparkLibs = Seq(
  "org.apache.spark" %% "spark-core" % sparkVersion,
  "org.apache.spark" %% "spark-sql" % sparkVersion
)

// JAR build settings
lazy val commonSettings = Seq(
  organization := "dzlab",
  version := "0.1",
  scalaSource in Compile := baseDirectory.value / "src",
  scalaSource in Test := baseDirectory.value / "test",
  resourceDirectory in Test := baseDirectory.value / "test" / "resources",
  javacOptions ++= Seq(),
  scalacOptions ++= Seq(
    "-deprecation",
    "-feature",
    "-language:implicitConversions",
    "-language:postfixOps"
  ),
  libraryDependencies ++= sparkLibs
)

// Docker Image build settings
dockerBaseImage := "gcr.io/spark-operator/spark:v" + sparkVersion

lazy val root = (project in file("."))
  .enablePlugins(
    DockerPlugin,
    JavaAppPackaging
  )
  .settings(
    name := "spark-k8s",
    commonSettings,
    dockerAliases ++= Seq(
      dockerAlias.value.withRegistryHost(Some("localhost:5000"))
    ),
    mainClass in (Compile, run) := Some("dzlab.SparkJob")
  )

SBT和打包程序版本

$ cat project/plugins.sbt
addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.0.0")
$ cat project/build.properties 
sbt.version=0.13.18

当我尝试运行打包程序

$ sbt docker:publish
[info] Loading global plugins from /Users/dzlab/.sbt/0.13/plugins
[info] Loading project definition from /Users/dzlab/Projects/spark-k8s/project
/Users/dzlab/Projects/spark-k8s/build.sbt:39: error: not found: value dockerAliases
    dockerAliases ++= Seq(
    ^
sbt.compiler.EvalException: Type error in expression
[error] sbt.compiler.EvalException: Type error in expression
[error] Use 'last' for the full log.
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? q

它不dockerAliases知道为什么不知道,因为它是发布设置的一部分。设置Docker注册表的正确方法是什么?

马蒂亚斯·伯恩特(Matthias Berndt)

您的sbt-native-packager版本和您的sbt版本已经过时了。该SettingKey在该版本中不存在。

比较:sbt-native-packager 1.0sbt-native-packager 1.7.4

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用 sbt-native-packager 设置 docker 镜像名称

Scala,Docker-如何使用sbt-native-packager在多模块应用程序中设置mainClass?

如何从Docker注册表设置自动部署到Kubernetes

如何设置充当代理的Docker注册表?

如何设置默认注册表以从Docker Machine中提取?

使用Letsencrypt证书设置Docker注册表

如何使用sbt-native-packager在Docker中使二进制文件可执行?

如何在Play的sbt-native-packager 0.8.0-M2中使用Docker

如何为SBT Native Packager的DockerPlugin设置基本映像?

使用 sbt-native-packager 为我的 sbt 项目获取 docker 支持时出错

如何引用内部Docker注册表?

如何阻止Docker注册表?

如何解决使用sbt-native-packager构建deb的changelog错误?

未使用Docker注册表镜像

如何设置 Jib 容器以通过 docker 远程注册表进行身份验证以提取图像?

如何在K8S集群中设置Docker注册表?

如何在Windows中为Docker工具箱设置注册表镜像

Docker 任务:如何从构建/发布变量设置 Azure 容器注册表名称或 ID?

使用Lets加密设置Docker注册表时找不到http://的求解器吗?

如何在具有多个电源的单个模块项目中设置sbt-native-packager

如何在sbt-native-packager发布中包含版本?

使用私有NPM注册表在Bitrise上构建React Native

sbt-native-packager的docker:publishLocal是做什么的?

如何在IntelliJ注册表中设置值?

如何仅为特定项目设置npm注册表

如何设置 kafka 模式注册表集群

如何在WIX中设置注册表值?

我应该如何设置私人npm注册表?

使用注册表查看 ICMP 类型设置