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

Docker容器内无法查看Flask应用创建的新JSON文件问题

嗨,我来帮你理清这个问题的来龙去脉~

问题核心原因

你遇到的情况完全是Docker卷挂载机制的差异导致的:

  • 第一个启动容器的命令里,你用了-v $PWD/cw_rules/signals/signals_oas3.0:/cw_rules/signals/signals_oas3.0参数,这相当于把你本地机器当前目录下的cw_rules/signals/signals_oas3.0文件夹,和容器内的同路径文件夹做了双向绑定。Flask应用创建的JSON文件其实是直接写到了你本地的物理文件系统里,容器只是通过挂载映射“共享”了这个目录的内容。
  • 而第二个启动shell的命令sudo docker run -it <image> /bin/sh没有添加这个挂载参数,此时容器里的/cw_rules/signals/signals_oas3.0是镜像本身自带的目录,和你本地的文件夹没有任何关联,自然看不到之前创建的文件。
解决方法

如果想在容器shell里看到那些本地创建的文件,只要在启动shell容器时加上同样的挂载参数就行:

sudo docker run -it -v $PWD/cw_rules/signals/signals_oas3.0:/cw_rules/signals/signals_oas3.0 <image> /bin/sh

执行这个命令进入容器后,再访问/cw_rules/signals/signals_oas3.0目录,就能看到本地物理文件系统里的所有文件了。

小提醒:如果是在不同终端窗口执行命令,要确保$PWD指向的是同一个本地目录哦,不然挂载路径不匹配也会出现看不到文件的情况~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 22:19:07