[英]Docker: executng commands with non-root user inside container
我有一個基於Docker注冊表中Debian Wheezy映像的自定義Docker容器。 我想和流浪者一起使用它(與docker-provider一起使用),所以我創建了一個新用戶(流浪用戶),該圖像保存在我們的存儲庫中。 在本地計算機上一切正常,我可以簡單地使用它,su vagrant可以正常工作。 我的機器是:
Linux ###### 3.13.8-1-ARCH #1 SMP PREEMPT Tue Apr 1 12:19:51 CEST 2014 x86_64 GNU/Linux
有些機器根本沒有問題。 但是在其他機器上
Linux ###### 3.13.7-1-MANJARO #1 SMP PREEMPT Mon Mar 24 19:44:00 UTC 2014 x86_64 GNU/Linux
和
Linux ###### 3.8.0-32-generic #47-Ubuntu SMP Tue Oct 1 22:35:23 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
我有這個問題:
docker run -ti example.com:5000/wheezy /bin/bash
root@385af4fd6f17:/# su vagrant
Cannot execute /usr/bin/zsh: Permission denied
root@385af4fd6f17:/#
我的機器上和其他一些機器上完全相同的命令完全沒有問題。 在最后兩台有問題的計算機中,root用戶可以正常工作,但是我不能在非root用戶上運行任何命令(我在當前會話中創建了另一個新用戶,沒有運氣)
這是因為該錯誤: https : //github.com/dotcloud/docker/issues/4068
使用devicemapper作為存儲驅動程序的機器可以,但是aufs存儲存在此錯誤。 將docker存儲更改為devicemapper(docker -d -s = devicemapper)或使用git版本(當前0.9.1具有此錯誤)修復了此問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.