Używam sbt-native-packager 1.0.0-M5 do utworzenia obrazu dokowanego. Muszę dodać plik, który nie jest plikiem źródłowym lub w folderze zasobów. Moje polecenia dokowane są następujące:Pliki ADD/COPY z obsługą docker sbt-native-packager
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")
)
nie powiedzie się z: msg="test.txt: no such file or directory"
Więc po wykopaniu około trochę wydaje muszę mieć test.txt
w target/docker/stage
. Wtedy to działa. Ale jak mogę to zrobić automatycznie? Plik znajduje się w folderze głównym projektu.
Też się nad tym zastanawiałem. Mogę powiedzieć, że dodanie go jako mapowania ('mapowania w Docker' lub' dockerPackageMappings w Docker') nie działa, pomimo tego [wydaje się, że powinno działać] (https://github.com/sbt/sbt-native- packager/blob/master/src/main/scala/com/typesafe/sbt/packager/docker/DockerPlugin.scala # L94). – 2rs2ts