我下载了一个装载了php和nginx的镜像,因为本身并没有安装bash,在生成容器后安装了bash。
现在我需要在容器内安装miniconda,但是遇到了问题:
mkdir: can't create directory '//miniconda3': Permission denied
ERROR: Could not create directory: '//miniconda3'
看情况应当是权限问题,然而我创建容器的命令是:
docker run -p 80:8080 -v xxx:xxx --name xxx --privileged 镜像名
按理来说,使用了priviliged以后,已经是docker内的最高权限,不会再有权限问题。
在安装命令前加上sudo不可行,因为我的容器内没有sudo相关命令:
/bin/sh: sudo: not found
可能这个镜像在构建的时候,Dockerfile里面手动指定了
USER
,不是使用root去执行的。所以你可以试试这样
docker exec --user root -it <container_id> sh
。