You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何清除Docker中NocoDB的所有数据以实现干净重启?

解决NocoDB Docker容器重置数据的问题

问题原因

你执行的docker run命令里,通过-v "$(pwd)"/nocodb:/usr/app/data/把本地当前目录的nocodb文件夹和容器内的NocoDB数据目录做了绑定挂载。SQLite的数据库文件就存在这个本地文件夹里,所以即使你删除容器、清理Docker卷,本地的这个文件夹依然保留着之前的测试数据,新容器启动后会自动读取这里的数据,导致无法从零开始。

解决方案

方案1:手动清理本地挂载目录(适合需要保留挂载方式的场景)

每次需要重置数据时,在停止并删除容器后,删除本地的nocodb文件夹:

# 停止并删除容器
docker stop nocodb
docker rm nocodb
# 删除本地挂载的文件夹
rm -rf "$(pwd)"/nocodb
# 重新启动容器,此时会创建新的空文件夹,数据从零开始
docker run -d --name nocodb \
-v "$(pwd)"/nocodb:/usr/app/data/ \
-p 8080:8080 \
nocodb/nocodb:latest

方案2:使用Docker临时卷(无需手动清理,适合纯测试场景)

如果只是测试用,不需要持久化数据,可以去掉本地挂载的参数,改用Docker的临时卷(容器删除时卷自动销毁):

# 停止并删除现有容器
docker stop nocodb
docker rm nocodb
# 启动新容器,不指定本地挂载,Docker会自动创建临时卷
docker run -d --name nocodb \
-p 8080:8080 \
nocodb/nocodb:latest

这样每次删除容器后,关联的临时卷会被自动清理,新启动的容器就是完全干净的状态。

补充:彻底清理残留数据

如果你之前做了各种操作后还有残留,可以执行以下命令确保彻底清理:

# 停止所有NocoDB容器
docker stop $(docker ps -q --filter "name=nocodb")
# 删除所有NocoDB容器
docker rm $(docker ps -aq --filter "name=nocodb")
# 删除本地的挂载文件夹(如果用了方案1的挂载)
rm -rf "$(pwd)"/nocodb
# 清理Docker无用资源(可选)
docker system prune -f

内容的提问来源于stack exchange,提问作者Sam Leurs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 11:42:39