首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Docker安装卷。权限被拒绝

Docker安装卷。权限被拒绝
EN

Stack Overflow用户
提问于 2017-11-09 16:51:27
回答 2查看 24K关注 0票数 7

我在挂载的docker卷中创建新文件时遇到问题。

首先,在安装docker之后,我将我的用户添加到docker组。

代码语言:javascript
复制
sudo usermod -aG docker $USER

创建为my $USER文件夹:

代码语言:javascript
复制
mkdir -p /srv/redis

和启动容器:

代码语言:javascript
复制
docker run -d -v /srv/redis:/data --name myredis redis

当我想以创建容器的用户身份在/srv/redis中创建文件时,我遇到了访问问题。

代码语言:javascript
复制
mkdir /srv/redis/redisTest
mkdir: cannot create directory ‘/srv/redis/redisTest’: Permission denied

我试着在其他线程中搜索,但我没有找到合适的解决方案。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-09 17:32:24

在我看来,问题的标题并没有反映出真正的问题。

代码语言:javascript
复制
mkdir /srv/redis/redisTest
mkdir: cannot create directory ‘/srv/redis/redisTest’: Permission denied

此问题很可能是因为当您运行以下命令时:

代码语言:javascript
复制
docker run -d -v /srv/redis:/data --name myredis redis

目录/srv/redis所有权更改为root。您可以通过以下方式进行检查

代码语言:javascript
复制
ls -lah /srv/redis

这是将外部目录挂载到docker的正常结果。要重新获得访问权限,您必须运行

代码语言:javascript
复制
sudo chown -R $USER /srv/redis
票数 9
EN

Stack Overflow用户

发布于 2017-11-09 17:22:07

我认为/srv/redis/redisTest目录是由redis容器内部的用户创建的,所以它属于redis容器用户。

您是否已经使用ls -l检查过/srv/redis/redisTest目录是否属于$USER

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47197493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档