Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ object DockerPlugin extends AutoPlugin {
// run validation, and warn the build users if the strategy is not compatible with `docker` that's in scope.
dockerPermissionStrategy := DockerPermissionStrategy.MultiStage,
dockerChmodType := DockerChmodType.UserGroupReadExecute,
dockerBaseImage := "openjdk:8",
dockerBaseImage := "eclipse-temurin:25",
dockerExposedPorts := Seq(),
dockerExposedUdpPorts := Seq(),
dockerExposedVolumes := Seq(),
Expand Down
2 changes: 1 addition & 1 deletion src/sbt-test/docker/file-permission/build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ lazy val root = (project in file("."))
val lines = dockerfile.linesIterator.toList
assertEquals(
lines,
"""FROM openjdk:8 AS mainstage
"""FROM eclipse-temurin:25 AS mainstage
|USER root
|RUN id -u demiourgos728 1>/dev/null 2>&1 || (( getent group 0 1>/dev/null 2>&1 || ( type groupadd 1>/dev/null 2>&1 && groupadd -g 0 root || addgroup -g 0 -S root )) && ( type useradd 1>/dev/null 2>&1 && useradd --system --create-home --uid 1001 --gid 0 demiourgos728 || adduser -S -u 1001 -G root demiourgos728 ))
|WORKDIR /opt/docker
Expand Down
41 changes: 30 additions & 11 deletions src/sbt-test/docker/jdk-versions/build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,43 @@ lazy val `jdk8` = project
.enablePlugins(JavaAppPackaging)
.settings(
name := basename + "-8",
dockerBaseImage := "openjdk:8u162-jre",
dockerBaseImage := "eclipse-temurin:8-jre",
dockerBuildOptions := dockerBuildOptions.value ++ Seq("-t", "jdk-versions:8")
)

lazy val `jdk9` = project
.in(file("jdk9"))
lazy val `jdk11` = project
.in(file("jdk11"))
.enablePlugins(JavaAppPackaging)
.settings(
name := basename + "-9",
dockerBaseImage := "openjdk:9.0.4-jre",
dockerBuildOptions := dockerBuildOptions.value ++ Seq("-t", "jdk-versions:9")
name := basename + "-11",
dockerBaseImage := "eclipse-temurin:11-jre",
dockerBuildOptions := dockerBuildOptions.value ++ Seq("-t", "jdk-versions:11")
)

lazy val `jdk10` = project
.in(file("jdk10"))
lazy val `jdk17` = project
.in(file("jdk17"))
.enablePlugins(JavaAppPackaging)
.settings(
name := basename + "-10",
dockerBaseImage := "openjdk:10-jre",
dockerBuildOptions := dockerBuildOptions.value ++ Seq("-t", "jdk-versions:10")
name := basename + "-17",
dockerBaseImage := "eclipse-temurin:17-jre",
dockerBuildOptions := dockerBuildOptions.value ++ Seq("-t", "jdk-versions:17")
)

lazy val `jdk21` = project
.in(file("jdk21"))
.enablePlugins(JavaAppPackaging)
.settings(
name := basename + "-21",
dockerBaseImage := "eclipse-temurin:21-jre",
dockerBuildOptions := dockerBuildOptions.value ++ Seq("-t", "jdk-versions:21")
)


lazy val `jdk25` = project
.in(file("jdk25"))
.enablePlugins(JavaAppPackaging)
.settings(
name := basename + "-25",
dockerBaseImage := "eclipse-temurin:25-jre",
dockerBuildOptions := dockerBuildOptions.value ++ Seq("-t", "jdk-versions:25")
)
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
object Hello extends App {
println("Hello JDK10!")
println("Hello JDK11!")
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
object Hello extends App {
println("Hello JDK9!")
println("Hello JDK17!")
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
object Hello extends App {
println("Hello JDK21!")
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
object Hello extends App {
println("Hello JDK25!")
}
14 changes: 10 additions & 4 deletions src/sbt-test/docker/jdk-versions/test
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
> project jdk8
> Docker/publishLocal
$ exec bash -c 'docker run --rm jdk-versions:8 | grep -q "Hello JDK8!"'
> project jdk9
> project jdk11
> Docker/publishLocal
$ exec bash -c 'docker run --rm jdk-versions:9 | grep -q "Hello JDK9!"'
> project jdk10
$ exec bash -c 'docker run --rm jdk-versions:11 | grep -q "Hello JDK11!"'
> project jdk17
> Docker/publishLocal
$ exec bash -c 'docker run --rm jdk-versions:10 | grep -q "Hello JDK10!"'
$ exec bash -c 'docker run --rm jdk-versions:17 | grep -q "Hello JDK17!"'
> project jdk21
> Docker/publishLocal
$ exec bash -c 'docker run --rm jdk-versions:21 | grep -q "Hello JDK21!"'
> project jdk25
> Docker/publishLocal
$ exec bash -c 'docker run --rm jdk-versions:25 | grep -q "Hello JDK25!"'
2 changes: 1 addition & 1 deletion src/sbt-test/docker/override-commands/build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ maintainer := "Gary Coady <gary@lyranthe.org>"

dockerUpdateLatest := true
dockerCommands := Seq(
Cmd("FROM", "openjdk:8"),
Cmd("FROM", "eclipse-temurin:25"),
Cmd("LABEL", s"""MAINTAINER="${maintainer.value}""""),
ExecCmd("CMD", "echo", "Hello, World from Docker")
)
4 changes: 2 additions & 2 deletions src/sphinx/formats/docker.rst
Original file line number Diff line number Diff line change
Expand Up @@ -337,7 +337,7 @@ In your sbt console type
.. code-block:: bash

> show dockerCommands
[info] List(Cmd(FROM,openjdk:8), Cmd(LABEL,MAINTAINER=Your Name <y.n@yourcompany.com>), ...)
[info] List(Cmd(FROM,eclipse-temurin:25), Cmd(LABEL,MAINTAINER=Your Name <y.n@yourcompany.com>), ...)



Expand Down Expand Up @@ -405,7 +405,7 @@ Now let's start adding some Docker commands.
import com.typesafe.sbt.packager.docker._

dockerCommands := Seq(
Cmd("FROM", "openjdk:8"),
Cmd("FROM", "eclipse-temurin:25"),
Cmd("LABEL", s"""MAINTAINER="${maintainer.value}""""),
ExecCmd("CMD", "echo", "Hello, World from Docker")
)
Expand Down
2 changes: 1 addition & 1 deletion test-project-docker/build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ name := "docker-test"
version := "0.1.0"

maintainer := "Gary Coady <gary@lyranthe.org>"
dockerBaseImage := "openjdk:8-jre-alpine"
dockerBaseImage := "eclipse-temurin:25-jre-alpine"
dockerUpdateLatest := true
dockerBuildxPlatforms := Seq("linux/arm64/v8", "linux/amd64")
dockerUsername := Some("dswiecki")