阅读本文前,希望你已经对volumes和bind mounts有了初步的了解,具体可以参考以下文章:
tmpfs mounts
volumes和bind mounts模式使我们能够在宿主机和容器间共享文件从而我们能够将数据持久化到宿主机上,以避免写入容器存储层带来的容器停止后数据的丢失的问题。
如果你使用linux运行docker,那么避免写入数据到容器存储层还有一个方案:tmpfs mounts。
tmpfs mounts,顾名思义,是一种非持久化的数据存储。它仅仅将数据保存在宿主机的内存中,一旦容器停止运行,tmpfs mounts会被移除,从而造成数据丢失。
tmpfs mounts的使用
我们可以在运行容器时通过指定--tmpfs
参数或--mount
参数来使用tmpfs mounts:
1
2
3
4
5
|
$ docker run -d \
-it \
--name tmptest \
-- mount type =tmpfs,destination= /app \
nginx:latest
|
1
2
3
4
5
|
$ docker run -d \
-it \
--name tmptest \
--tmpfs /app \
nginx:latest
|
使用
--tmpfs
参数无法指定任何其他的可选项,并且不能用于swarm service。
使用docker container inspect tmptest
命令,然后查看mounts
部分可以看到:
1
2
3
|
"tmpfs" : {
"/app" : ""
},
|
tmpfs mounts 可选选项
一个例子:
1
2
3
4
5
|
docker run -d \
-it \
--name tmptest \
-- mount type =tmpfs,destination= /app ,tmpfs-mode=1770 \
nginx:latest
|
tmpfs mounts使用场景
请参考这篇文章:docker数据存储总结
参考文章
https://docs.docker.com/storage/tmpfs/
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接
原文链接:https://www.jianshu.com/p/aca3fcd49c1a