无法通过Spotify Docker客户端将文件复制到Docker容器

时间:2019-03-05 21:25:50

标签: java docker kotlin spotify spotify-docker-client

我想通过Spotify-

通过Docker客户端将文件复制到未运行的容器中

文件的创建方式--

library(plotly)
plot_ly(x = df$group, y = df$val, split = df$group, type = 'violin', box = list(visible = F), points = F, showlegend = T, color = df$group)

当我尝试:

ggplotly

我得到:

File.createTempFile("olb-", "-temp").deleteOnExit().writeText("some text")

好吧,好的-我在使用client.copyToContainer(inputFileProvider.createFile(task.dataToInsert).toPath(), containerId, "/app/asd.json") 构建映像时创建了此文件 下次运行:

Either container 1adbf9c1ee511272bec78a46be08bf9299c317b11cdb176eed986640ac86a38c or path /app/my_json.json not found.

产生于

RUN touch /app/my_json.json

好吧...我尝试过目录

client.copyToContainer(inputFileProvider.createFile(task.dataToInsert).toPath(), containerId, "/app/my_json.json")

结果:

{"message":"extraction point is not a directory"}

copyToContainer(inputFileProvider.createFile(task.dataToInsert).toPath(), containerId, "/app/")

相同

有什么想法如何通过Java客户端将文件复制到docker容器中?

1 个答案:

答案 0 :(得分:0)

原来,我必须创建一个完整的新文件夹,然后在其中创建一个文件并复制该文件夹。

val dir = Files.createTempDirectory("tem-folder-")
Files.createFile(dir.resolve("filename")).toFile().writeText("data to write")

val toBeCopied = dir.toFile()

cliend.copyToContainer(toBeCopied.toPath(), "containerId", "targetPath")