docker - 如何使用 docker 在 alpine 图像上以 root 用户身份运行 bash?苏 : must be suid to work properly

标签 docker docker-compose kong

编辑:
答案是那么清楚。可以使用标志--user root进入容器时。

docker exec -it --user root mycontainername bash                 or sh

我刚刚为服务(Kong API 网关)下载了这个官方 docker hub 的 1.5.0-alpine 镜像,现在我无法运行 apk 命令来安装 nano,例如。

之前,我只需要进入容器
docker exec -it kong sh 

或者
docker-compose exec kong sh

我能够运行像 apk update 这样的命令或 apk add nano , 例如。

但现在我收到这些错误
$ apk update                                                                                                                                   
ERROR: Unable to lock database: Permission denied                                                                                                
ERROR: Failed to open apk database: Permission denied

$ apk add nano
ERROR: Unable to lock database: Permission denied
ERROR: Failed to open apk database: Permission denied

我也尝试运行 sudo 和 su ......但我得到了
$ su
su: must be suid to work properly
$ su root
su: must be suid to work properly
$ suid
sh: suid: not found

我真的需要构建自己的自定义图像吗?我使用的是官方的,它运行良好。

最佳答案

您可以使用 --user root 在容器内以 root 身份运行命令.获取 shell :

docker exec -it --user root kong sh

关于docker - 如何使用 docker 在 alpine 图像上以 root 用户身份运行 bash?苏 : must be suid to work properly,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61683448/

相关文章:

docker - Visual Studio 生成的 Dockerfile 不适用于手动 docker build

mysql - 使用 deitch/mysql-backup 恢复数据库时,第 22 行 : No database selected, 出现错误 1046 (3D000)

docker - Azure VM Windows 10上的docker

cassandra - Kong:在 Mac OS X 上运行 Mashape Kong 失败

node.js - "Dockerized"Node.js 应用程序未响应主机

docker - Docker Compose同时使用主机和桥接网络

docker - docker-container 中的 inotifywait 不注册更改

Jenkins docker 插件和链接的 slave

docker - 如何在etcd或consul中使用kong服务器?

ios - HMAC-SHA1 Swift 3 - 403 禁止