使用ECS Fargate时如何管理`tmp`文件夹?

问题描述 投票:1回答:2

我目前正在使用AWS Fargate在生产中运行一些容器。我正在运行一个应用程序,不时将一些文件填充到/tmp文件夹。

也就是说,我想知道这个/tmp文件夹会发生什么。这是由Fargate(例如ECS Container Agent)管理的东西,还是我需要自己管理的东西(例如使用cronjob来清除那里的文件)?

注1:处理这种情况的一种方法是使用s3来处理这种行为,但是,问题是要知道Fargate/tmp文件夹中的行为。

注意2:我不需要/tmp文件夹中的文件,它们恰好出现在那里,我想知道我是否需要删除它们,或者ECS是否会为我这样做。

我在文档中找不到任何相关内容。如果有人在文档上指出该主题,我会很乐意接受答案。

amazon-web-services amazon-ecs aws-fargate
2个回答
2
投票

如果我正确理解您的问题,您似乎希望更精确地控制容器中的临时存储。

我认为ECS或Fagate对容器内FS上的/ tmp文件夹没有任何特殊之处。

但是,docker确实有一个tmpfs mount的概念。这允许您指定一个允许您避免在容器主机上存储数据的路径。

https://docs.docker.com/storage/tmpfs/

ECS和Fargate最近增加了对tmpfs标志的支持:

https://aws.amazon.com/about-aws/whats-new/2018/03/amazon-ecs-adds-support-for-shm-size-and-tmpfs-parameters/


1
投票

如果我理解正确,在你的Fargate任务结束运行后,所有存储都会消失。

根据aws documentation的说法,Fargate任务在配置时会收到一些存储空间,但这是一个短暂的存储空间。

因此,除非您使用永久运行的任务,否则您不需要处理临时文件。他们将与存储一起消失。

我希望这有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.