我见过很多忽略文件系统层次标准(FHS)的 Docker 镜像。大多数示例(一些官方)忽略了 FHS。例如,有些人可能会选择将他们的二进制文件/app
和数据放在 中/data
,entrypoint.sh
在根目录中放置一个等等。
FHS 的目的是更好地实现分发和应用程序的互操作性。Dockerfile 的 FHS 合规性允许将 Linux 基础映像更改为另一个版本或发行版。例如,可能需要这样的升级来解决分发包的错误修复。
编写不符合 FHS 的 Dockerfile 似乎是一种常见的做法。这会使维护变得更加复杂吗?