小编dru*_*ubb的帖子

如何在docker容器中使用sudo?

通常,使用用户root运行docker容器.我想使用不同的用户,使用docker的USER指令没问题.但是这个用户应该能够在容器内使用sudo.缺少此命令.

这是一个简单的Dockerfile用于此目的:

FROM ubuntu:12.04

RUN useradd docker && echo "docker:docker" | chpasswd
RUN mkdir -p /home/docker && chown -R docker:docker /home/docker

USER docker
CMD /bin/bash
Run Code Online (Sandbox Code Playgroud)

运行此容器,我使用用户'docker'登录.当我尝试使用sudo时,找不到该命令.所以我尝试使用在我的Dockerfile中安装sudo

RUN apt-get install sudo
Run Code Online (Sandbox Code Playgroud)

这导致无法找到包sudo

sudo docker linux-containers

223
推荐指数
10
解决办法
22万
查看次数

使用Docker Compose的交互式shell

有没有办法只使用Docker Compose在容器中启动交互式shell?我在docker-compose.yml中试过这样的东西:

myapp:
  image: alpine:latest
  entrypoint: /bin/sh
Run Code Online (Sandbox Code Playgroud)

当我使用docker-compose启动此容器时,它会立即退出.是否有任何可以添加到entrypoint命令的标志,或作为myapp的附加选项,以启动为交互式shell?

我知道有一些原生的docker命令选项来实现这一点,只是好奇,如果它也可以只使用Docker Compose.

shell interactive docker docker-compose

214
推荐指数
10
解决办法
15万
查看次数