个人项目用 Docker 部署,哪些目录一定要持久化?
发布于
个人项目用 Docker 部署很方便,但有个坑很容易被忽略:容器删了,数据也可能没了。
一般至少要确认这些东西有没有持久化:
-
数据库数据
MySQL/Postgres/SQLite 的数据目录一定要挂载或外部化。 -
用户上传文件
图片、附件、头像、导入文件,这些通常不在数据库里。 -
配置文件
环境变量、yaml、证书路径、第三方服务配置。 -
日志
不一定永久保存,但排查问题时要能拿到。 -
备份目录
有备份脚本还不够,要确认备份真的落在宿主机或远端。
我自己的检查习惯是:
先列出应用会产生哪些状态;
再确认这些状态分别在哪里;
最后模拟容器重建,看数据还在不在。
Docker 简化的是部署,不是数据管理。
你们个人项目部署时,最容易漏掉哪类数据?
浏览(13)
