将文件放入docker运行
作为运行命令的一部分,我需要将一个文件或一些数据pipe道(注入)到docker中,并将其作为启动的一部分写入容器中的文件。 有最佳做法的方式来做到这一点?
我已经试过了
cat data.txt | docker run -a stdin -a stdout -i -t ubuntu /bin/bash -c 'cat >/data.txt'
但似乎无法得到它的工作。
cat setup.json | docker run -i ubuntu /bin/bash -c 'cat'
这对我有效。 删除-t。 不需要-a的。
更好的解决scheme是使(托pipe)你的主机文件夹可以被docker容器访问。 像这样
docker run -v /Users/<path>:/<container path> ...
这里是/Users/<path>
是你主机上的一个文件夹,并且是<container path>
内的<container path>
装载path。
另请参阅pipe理容器手册页面中的数据 。
更新另一个从Docker Containers访问外部文件的例子。