首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >运行码头容器时出错

运行码头容器时出错
EN

Stack Overflow用户
提问于 2016-06-14 09:25:04
回答 1查看 133关注 0票数 0

我使用以下命令运行一个docker映像。

代码语言:javascript
复制
docker run -it -p 8080:8080 -p 29418:29418 --rm \  
-e AUTH_TYPE='DEVELOPMENT_BECOME_ANY_ACCOUNT' \
-v /home/gerrit-site:/home/gerrit/site \
-v /home/nidhi/.ssh/id_rsa.pub:/root/.ssh/id_admin_rsa.pub \
-v /home/nidhi/.ssh/id_rsa:/root/.ssh/id_admin_rsa \
-e GERRIT_ADMIN_USER='admin' \
-e GERRIT_ADMIN_EMAIL='admin@fabric8.io' \
-e GERRIT_ADMIN_FULLNAME='Administrator' \
-e GERRIT_ADMIN_PWD='mysecret' \          
-e GERRIT_ADMIN_PRIVATE_KEY='/home/gerrit/ssh-keys/id_admin_rsa' \
-e GERRIT_PUBLIC_KEYS_PATH='/home/gerrit/ssh-keys' \
-v /home/nidhi/.ssh:/home/gerrit/ssh-keys \
--name gerrit admin_gerrit

我知道这个命令是正确的,因为我以前使用过这个命令,它运行得非常好。但是现在,当我运行这个命令时,我得到了以下错误,

代码语言:javascript
复制
Error response from daemon: Cannot start container 2c9514c3b0d953344e66525d083c7ec3921cb9cde2185f43ec3bec2579597485: stat /home/nidhi/.ssh/id_rsa: permission denied

我检查了ssh公钥和私钥的权限。该许可为700英镑,属于nidhi所有。请有人指出我的错误是什么。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-06-14 12:30:28

当docker运行时,容器中的uid可能与主机上的uid不匹配。因此,对于包含有700个权限的文件的主机卷,容器内的uid将无法读取。我想到了三个选择:

  1. 为了保持700个权限和相同的映像,您需要在主机上设置文件,以匹配容器中的uid。
  2. 您可以使用命名卷而不是主机卷,将凭据添加到该命名卷中,然后在其中设置权限以匹配将在其中使用卷的容器。
  3. 或者,您可以使用重新构建的另一个映像来更改uid,使其与主机上的uid匹配。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37807976

复制
相关文章

相似问题

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