[英]Docker mounting volume. Permission denied
I have a problem with creating new files in mounted docker volume. 我在安装的docker卷中创建新文件时遇到问题。
Firstly after installation docker i added my user to docker group. 首先在安装docker后我将我的用户添加到docker组。
sudo usermod -aG docker $USER
Created as my $USER folder: 创建为我的$ USER文件夹:
mkdir -p /srv/redis
And starting container: 并启动容器:
docker run -d -v /srv/redis:/data --name myredis redis
when i want to create file in /srv/redis as a user which created container I have a problem with access. 当我想在/ srv / redis中创建文件作为创建容器的用户时我遇到了访问问题。
mkdir /srv/redis/redisTest
mkdir: cannot create directory ‘/srv/redis/redisTest’: Permission denied
I tried to search in other threads but i didn't find appropriate solution. 我试图在其他线程中搜索,但我找不到合适的解决方案。
The question title does not reflect the real problem in my opinion. 问题标题并不反映我认为的真正问题。
mkdir /srv/redis/redisTest
mkdir: cannot create directory ‘/srv/redis/redisTest’: Permission denied
This problem occurs very likely because when you run: 很可能发生此问题,因为当您运行时:
docker run -d -v /srv/redis:/data --name myredis redis
the directory /srv/redis
ownership changes to root
. 目录/srv/redis
所有权更改为root
。 You can check that by 你可以检查一下
ls -lah /srv/redis
This is normal consequence of mounting external directory to docker
. 这是将外部目录安装到docker
正常结果。 To regain access you have to run 要重新获得访问权限,您必须运行
sudo chown -R $USER /srv/redis
I think /srv/redis/redisTest
directory is created by user inside redis
container, so it belong to redis
container user. 我认为/srv/redis/redisTest
目录是由用户在redis
容器中创建的,因此它属于redis
容器用户。
Have you already check using ls -l
to see that /srv/redis/redisTest
directory belong to $USER
? 您是否已使用ls -l
检查/srv/redis/redisTest
目录是否属于$USER
?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.