Skip to content

数据与持久化 ​

哪些会保留,哪些不会 ​

快速开始里的命令带了 --rm,容器停止时会被删除。

数据在哪里容器停止后
你的项目/workspace,从你的电脑挂载进来✅ 保留:它就在你的电脑上
AI 助手的登录状态和设置容器里的 ~/.claude、~/.codex 等❌ 丢失,除非放进卷(见下文)
Git 凭据容器里的 ~/.git-credentials❌ 丢失
用 pip、npm -g、apt 装的包容器里❌ 丢失
shell 历史记录容器里❌ 丢失

这是有意为之:每个新容器都从同一个干净的镜像开始。

保留 AI 助手的登录 ​

在 docker run 命令里,为各个助手的目录加上 Docker 卷:

bash
docker run -d \
--rm \
--name "yeci-$PROJECT_NAME" \
--network host \
-v "$PWD":/workspace \
-v yeci-claude:/root/.claude \
-v yeci-codex:/root/.codex \
-v yeci-gemini:/root/.gemini \
-v yeci-grok:/root/.grok \
docker.io/yeciorg/yeci > /dev/null

Docker 会在第一次使用时创建这些命名卷(yeci-claude 等),删除容器后卷仍然保留。所有 YECI 容器共用这些卷,所以登录一次,所有项目都能用。

对 Claude Code 来说,登录信息本身保存在 ~/.claude/ 里,用这种方式可以保留。Claude Code 还会把一部分应用状态(比如首次运行的设置、已信任的文件夹)保存在单独的文件 ~/.claude.json 里,这种方式保留不了它,所以在新容器里,Claude Code 可能会再走一遍部分首次运行的设置。

删除保存的登录:

bash
docker volume rm yeci-claude yeci-codex yeci-gemini yeci-grok

Git 凭据 ​

git 配置了 credential.helper store:第一次 git push / git pull 输入用户名和密码(或 token)后,git 会把它以明文保存在 ~/.git-credentials,之后不再询问。和 /workspace 以外的所有内容一样,删除容器后它也会丢失。