写入已挂载目录时权限被拒绝

时间:2018-03-23 15:10:07

标签: docker

尝试启动已挂载hosts共享文件夹的容器,并将文件<div class="accordion"> <h1>ACCORDION 1</h1> <div class="accordion-text"> Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore. Lorem ipsum dolor sit amet</div> </div> <div class="accordion"> <h1>ACCORDION 2</h1> <div class="accordion-text"> Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore. Lorem ipsum dolor sit amet</div> </div> <div class="accordion"> <h1>ACCORDION 3</h1> <div class="accordion-text"> Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore. Lorem ipsum dolor sit amet</div> </div> <div class="accordion"> <h1>ACCORDION 4</h1> <div class="accordion-text"> Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore. Lorem ipsum dolor sit amet</div> </div> <div class="accordion"> <h1>ACCORDION 5</h1> <div class="accordion-text"> Lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod tempor incididunt ut labore. Lorem ipsum dolor sit amet</div> </div>放在那里:

addd.txt

收到错误:

sudo docker run -it -v ~/shared:/media/ i386/centos:6 echo aaa >> /media/addd.txt

我试图将文件从容器内部保存到共享目录,并且运行正常:

bash: /media/addd.txt: Permission denied

为什么我在docker run procedure期间无法创建文件?

2 个答案:

答案 0 :(得分:0)

这是因为sudo没有执行输出的重定向。

简单的解决方法:

sudo bash -c "docker run -it -v ~/shared:/media/ i386/centos:6 echo aaa >> /media/addd.txt"

答案 1 :(得分:0)

要使重定向在容器内“工作”,您必须使用sh -c 'your_echo_stuff_and_redirection_here'作为容器命令。类似的东西:

  • docker run ... sh -c 'echo aaa >> /media/addd.txt'