docker - 安装docker后可以添加docker组吗?

标签 docker dockerfile

从下面的代码片段(取自here)中,

# Create Docker Group with GID
# Set default value of 497 if DOCKER_GID set to blank string by Docker Compose
RUN groupadd -g ${DOCKER_GID:-497} docker

# Used to control Docker and Docker Compose versions installed
# NOTE: As of February 2016, AWS Linux ECS only supports Docker 1.9.1
ARG DOCKER_ENGINE=1.10.2
ARG DOCKER_COMPOSE=1.6.2

# ......

# Install Docker Engine
RUN apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D && \
    echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | tee /etc/apt/sources.list.d/docker.list && \
    apt-get update -y && \
    apt-get purge lxc-docker* -y && \
    apt-get install docker-engine=${DOCKER_ENGINE:-1.10.2}-0~trusty -y && \
    usermod -aG docker jenkins && \
    usermod -aG users jenkins

在安装docker引擎之前已明确创建docker组。

1)Docker引擎安装是否未创建docker组?

2)为什么在安装docker之后我们不能运行groupadd

最佳答案

Docker软件包会在安装时创建docker组。同时,这是使用默认值创建的(我没有花时间检查,但是我的两台ubuntu机器正在以999的gid运行)。

在上面的示例中,创建该组是在安装软件包之前创建的,该软件包的默认gid为497(可以在docker环境中设置DOCKER_GID),可以自定义。在您的原始链接上有一条评论说:

Set to 497 by default, which is the group ID used by AWS Linux ECS Instance



您在这里构建的是某种形式的东西(docker中的docker)。目的是确保主机上的docker guid与dind实例中的guid相同,以便它们可以共享已安装卷上的文件(例如,控制套接字以直接在主机上直接启动其他docker容器...)。

如果您未事先创建组,则由于该组已存在,因此无法再运行groupadd

您可以在现有的组上运行groupmod,但是我不喜欢把[g | u] id弄乱。通常,在安装软件包之前按照您的确切要求创建系统用户/组是最安全的方法。

关于docker - 安装docker后可以添加docker组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58681161/

相关文章:

linux - 在docker中重定向命令输出

symfony - fedora中用于docker的setfacl权限以获取symfony缓存

postgresql - PostgreSQL-身份验证在Docker中失败

docker - 如何保持无限循环运行以不关闭Docker中的容器

c# - .net 6 最小 api docker 问题 : error CS5001: Program does not contain a static 'Main' method suitable for an entry point

bash - 如何更改Docker终端启动脚本?

docker - 兼容模式不支持以下部署子键

docker - 在网络 nat : hnsCall failed in Win32: The process cannot access the file 上创建端点失败

amazon-web-services - ecs 容器定义内的环境变量与 Dockerfile 中定义的相同环境变量。将使用哪一个?

javascript - 将脚本输出重定向到 docker 日志