首页/云/Docker 容器速查/只读根文件系统 --read-only
资源与安全50 条

只读根文件系统 --read-only

把容器根文件系统挂成只读:进程无法改写自身文件,缩小篡改与持久化空间;需要写入的目录用 tmpfs 或卷单独放开。

Docker 容器速查云更新于 2026-10-12
参数--read-only
配套--tmpfs /tmp 等可写目录
检查容器内 touch /x 应失败

示例

示例
docker run -d --read-only --tmpfs /tmp --tmpfs /run --name web nginx:1.27-alpine
docker exec web sh -c 'touch /probe' || echo 'readonly ok'
docker inspect -f '{{.HostConfig.ReadonlyRootfs}}' web
多数应用需要若干可写目录(缓存、pid、socket),先用只读启动、按报错逐个补 tmpfs,是常用的适配路径。

易错点

  • 把可写需求一股脑映射成卷会削弱收益,优先用 tmpfs 承接临时文件
  • 日志直接写容器文件系统的应用要先改为 stdout 或挂卷,否则只读后启动即失败

数据来源与参考

  • Docker 官方 CLI 参考:docker run --read-only(docs.docker.com)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌