我想在运行时将文件从主机系统传递到容器。我想在容器中运行CLI工具,并将文件用作CLI工具的参数。是否可以修改以下命令:docker run -it --rm --name <container-name>
以实现我想要的操作。 docker cp
命令不能满足我的需要,因为它不是在容器内运行的,我需要将文件名作为参数传递。
最佳答案
我通常使用-v "$PWD:$PWD" -w "$PWD"
技巧。运行容器并在同一路径下将当前主机工作目录卷安装到容器中,并将工作目录设置为相同路径。
因此,例如,如果我想将主机上的wav文件转码为在容器中运行的usig ffmpeg的mp3文件,我会这样做:
docker run --rm -v "$PWD:$PWD" -w "$PWD" mwader/static-ffmpeg:4.2.2 -i file.wav file.mp3
如果您不确定以哪个默认用户身份运行图像,也可以添加
-u $UID:$GROUPS
。关于docker - 如何将文件传递到Docker容器中以与该容器一起使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60314514/