无法删除通过 Docker 创建的文件
Can't Delete file created via Docker
我使用此命令将 docker 图像用于 运行 我们学校服务器上的程序。
docker run -t -i -v /target/new_directory 990210oliver/mycc.docker:v1 /bin/bash
在我 运行 之后,它在我的帐户上创建了一个名为 new_directory 的火炉。现在我没有删除或修改文件的权限。
如何删除这个目录?
试试这个:
docker stop $CONTAINER_NAME
docker rm -v $CONTAINER_NAME
我想这应该删除挂载的目录。如果没有,请明确执行此操作:
sudo rm -rf /target/new_directory
将目录中所有文件的所有者更改为您在容器中使用的 ID 运行 作为 root,然后退出容器并删除目录。
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
我也遇到了这个问题
之后:
docker run --name jenkins -p 8080:8080 -v $HOME/jenkins:/var/jenkins_home jenkins jenkins
我无法删除 $HOME/jenkins
中的文件。
对我不起作用,因为 chown
给了我:
chown: changing ownership of '/var/jenkins_home': Operation not permitted
解法:
exec /bin/bash
以根用户身份进入容器:
docker exec -it --privileged --user root container_id /bin/bash
然后:
cd /var/jenkins_home/ && rm -r * .*
我把@siulkilulki 的回答写成一行:
docker exec --privileged --user root <CONTAINER_ID> chown -R "$(id -u):$(id -g)" <TARGET_DIR>
注意这里的CONTAINER必须在上面。
我遇到了同样的问题。我正在使用 ubuntu 18.04。我 运行 以下代码然后我能够在本地删除文件。我在 docker 项目目录
中有 app
目录
- cd 到您的 docker 项目目录
sudo chown -R $(whoami):$(whoami) app/
docker 运行 -v {文件所在目录的绝对路径}:/to_delete -it ubuntu /bin/bash
然后:
$ cd to_delete
$ rm -rf
我使用此命令将 docker 图像用于 运行 我们学校服务器上的程序。
docker run -t -i -v /target/new_directory 990210oliver/mycc.docker:v1 /bin/bash
在我 运行 之后,它在我的帐户上创建了一个名为 new_directory 的火炉。现在我没有删除或修改文件的权限。
如何删除这个目录?
试试这个:
docker stop $CONTAINER_NAME
docker rm -v $CONTAINER_NAME
我想这应该删除挂载的目录。如果没有,请明确执行此操作:
sudo rm -rf /target/new_directory
将目录中所有文件的所有者更改为您在容器中使用的 ID 运行 作为 root,然后退出容器并删除目录。
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
我也遇到了这个问题
之后:
docker run --name jenkins -p 8080:8080 -v $HOME/jenkins:/var/jenkins_home jenkins jenkins
我无法删除 $HOME/jenkins
中的文件。
chown
给了我:
chown: changing ownership of '/var/jenkins_home': Operation not permitted
解法:
exec /bin/bash
以根用户身份进入容器:
docker exec -it --privileged --user root container_id /bin/bash
然后:
cd /var/jenkins_home/ && rm -r * .*
我把@siulkilulki 的回答写成一行:
docker exec --privileged --user root <CONTAINER_ID> chown -R "$(id -u):$(id -g)" <TARGET_DIR>
注意这里的CONTAINER必须在上面。
我遇到了同样的问题。我正在使用 ubuntu 18.04。我 运行 以下代码然后我能够在本地删除文件。我在 docker 项目目录
中有app
目录
- cd 到您的 docker 项目目录
sudo chown -R $(whoami):$(whoami) app/
docker 运行 -v {文件所在目录的绝对路径}:/to_delete -it ubuntu /bin/bash
然后:
$ cd to_delete
$ rm -rf