我需要使用docker exec运行2个命令.
我正在从docker容器中复制一个文件,并且不想处理凭据来使用像ssh这样的东西.
此命令复制文件:
sudo docker exec boring_hawking tar -cv /var/log/file.log | tar -x
但是它创建一个子目录var / log,我想避免这样,如果我可以在docker容器中做这些,我应该是好的:
cd /var/log ; tar -cv ./file.log
如何使docker exec运行2命令?
最佳答案
这导致了答案:Escape character in Docker command line
我最终这样做:
我最终这样做:
sudo docker exec boring_hawking bash -c 'cd /var/log ; tar -cv ./file.log' | tar -x
所以它的作用是,运行一个bash命令,一个参数是我要运行的2个命令.