使用docker镜像来存储数据文件

我是docker工人,刚刚开始探索它。 我试图实现的是发布一个Docker镜像,它只是有一些configuration文件。 这些文件将在多个项目中共享。

所以我想发布的图像是“my-config-image”。


这是如何目录结构是:

/my-config-settings /folder1/multiple files /folder2/multiple files file1.txt file2.txt 

在网上阅读,并通过docker快速启动,我有一些理解。

我决定使用scratch创build一个简单的基本图像。 参考( https://docs.docker.com/engine/userguide/eng-image/baseimages/ )

这是我的Dockerfile的外观。

 FROM scratch ADD folder1 / folder2 / 

这是我用来发布图像的命令。

 /my-config-settings/docker build -t my-config-image . Sending build context to Docker daemon 5.12 kB Step 1 : FROM scratch ---> Step 2 : ADD folder1 / folder2 / ---> Using cache ---> cc9c3f338f51 Successfully built cc9c3f338f51 

当我想检查图像是否在本地创build时,我正在通过执行来确认它

 docker images REPOSITORY TAG IMAGE ID CREATED SIZE my-config-image latest cc9c3f338f51 2 minutes ago 39 B 

我的主要查询是如何检查这是否工作,还这样做将file1.txt和file2.txt添加到图像中,如果不是如何指定要在图像中添加这些文件。

有没有办法,我可以添加所有的文件和目录recursion到我想创build的图像?

另外如何访问这个图像,意味着如何检查这个图像是否实际上包含了所有的文件夹和文件。 有没有办法cd到这个?

如果我正在尝试做的事情没有意义,我可以提出一些build议,看看另一个docker工人的方法。

感谢您的阅读。

您正试图通过应用程序pipe理方法解决configurationpipe理问题。 对于共享configuration,您通常要采取“集中定位方法”。 基本的例子是git仓库或S3存储桶。 两种解决scheme都具有本地文档存储function,并且可以在具有细粒度访问控制的服

docker图像不是docker的方式来存储/共享configuration。 通过形象,你基本上可以做两件事情:
1.将其他图像放在最初的图像上
2.运行一个容器

鉴于你的形象在这里只是Scratch和文件,没有可执行文件,没有什么可运行的。 hello world的例子用一个实际的脚本拷贝了一个目录,这就是为什么他们最终得到了一个可运行的容器。

作为基础映像,configuration在依赖关系之前没有任何意义。

如果你真的想使用一个泊坞窗工具,你正在寻找docker卷。 这可以坚持一个文件系统,很容易分享不同的容器。 https://docs.docker.com/engine/userguide/containers/dockervolumes/