Kat*_*tie 5 docker docker-volume
我使用 docker 镜像使用这个命令在我们学校的服务器上运行一个程序。
docker run -t -i -v /target/new_directory 990210oliver/mycc.docker:v1 /bin/bash
Run Code Online (Sandbox Code Playgroud)
在我运行它之后,它在我的帐户上创建了一个名为 new_directory 的 firectory。现在我没有删除或修改文件的权限。
如何删除此目录?
siu*_*lki 12
我也有这个问题。
后:
docker run --name jenkins -p 8080:8080 -v $HOME/jenkins:/var/jenkins_home jenkins jenkins
Run Code Online (Sandbox Code Playgroud)
我无法删除$HOME/jenkins.
里卡多布兰科的回答对我不起作用,因为chown给了我:
chown: changing ownership of '/var/jenkins_home': Operation not permitted
Run Code Online (Sandbox Code Playgroud)
解决方案:
exec /bin/bash 以 root 用户身份进入容器:
docker exec -it --privileged --user root container_id /bin/bash
Run Code Online (Sandbox Code Playgroud)
然后:
cd /var/jenkins_home/ && rm -r * .*
Run Code Online (Sandbox Code Playgroud)
小智 5
我把 @siulkilulki 的答案写成了一行:
docker exec --privileged --user root <CONTAINER_ID> chown -R "$(id -u):$(id -g)" <TARGET_DIR>
Run Code Online (Sandbox Code Playgroud)
请注意,这里的 CONTAINER 必须处于向上状态。
将目录中所有文件的所有者更改为您在以 root 身份运行的容器中使用的 ID,然后退出容器并删除该目录。
docker run --rm -v /target/new_directory 990210oliver/mycc.docker:v1 chown -R $(id -un):$(id -un) /target/new_directory
exit
rm -rf $HOME/new_directory
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10976 次 |
| 最近记录: |