Docker容器执行完毕退出后,如何获取OpenAI Whisper输出文件?
解决Docker运行Whisper后无法获取输出文件的问题
方案一:让输出直接写入本地目录(最优解)
你的现有命令已挂载本地${PWD}/audio-files到容器/app,但因输入文件路径未对应挂载目录,导致输出未同步到本地。修正命令,确保输入文件指向挂载目录内的文件,转录结果会直接同步到本地:
docker run -it -v ${PWD}/models:/root/.cache/whisper -v ${PWD}/audio-files:/app openai-whisper whisper /app/audio-file.mp3 --model turbo --language Italian --output_dir /app --output_format txt
执行后,生成的.txt转录文件会直接出现在本地${PWD}/audio-files目录下,无需额外操作。
方案二:从已退出的容器中复制文件
如果容器已经退出,无需启动容器,直接用docker cp提取文件:
- 先列出所有容器(包括已退出的),找到目标容器的ID或名称:
docker ps -a
- 执行复制命令,将容器内的输出文件拷贝到本地(替换
<container-id>和<output-file-name>为实际值):
docker cp <container-id>:/app/<output-file-name>.txt ./
注:
docker start <container>后容器立即退出是正常现象——容器的主进程(Whisper转录任务)已执行完毕,无需启动容器即可完成文件复制。
内容的提问来源于stack exchange,提问作者Fredovsky
相关产品推荐
相关产品推荐

