目前,我在脚本中有以下内容:
DOCKER_GROUP_ID=$(cut -d: -f3 < <(getent group docker))
...
docker run --group-add ${DOCKER_GROUP_ID} ...
问题是,当我运行此脚本时,总是在结果容器中收到如下消息:
groups: cannot find name for group ID 999
解决方案:
根据@TarunLalwani的回答,我的脚本中包含以下内容:
DOCKER_GROUP_ID=$(cut -d: -f3 < <(getent group docker))
CMD="docker run -d \
--group-add ${DOCKER_GROUP_ID} \
${IDEA_IMAGE}"
echo $CMD
CONTAINER=$($CMD)
# Post-configuration
docker exec --user=root -it $CONTAINER groupadd -g $DOCKER_GROUP_ID docker
docker attach $CONTAINER
最佳答案
这是预期的行为,因为组ID仅插入在容器内部,而不插入其名称。因此,您可以运行id命令,以查看仅不传递组名的组名
唯一的解决方法是运行命令groupadd -g 999 docker
。这也将其添加到组文件中。但是您必须执行它,而docker不会为您做