似乎 useradd
不在 amazonlinux docker 基础镜像中。
当我的 Dockerfile 安装 openldap-devel 时,useradd
将起作用,因此当我的图像具有以下内容时,RUN useradd my_user
将起作用:
FROM amazonlinux
RUN yum -y install python3 \
gcc \
python3-pip \
python3-devel \
openldap-devel
当我的形象刚刚建立时
FROM amazonlinux
RUN yum -y install python3 \
gcc \
python3-pip \
python3-devel
命令
RUN useradd my_user
失败并显示错误消息 /bin/sh: useradd: command not found
如何在 amazonlinux 基础镜像中安装
useradd
而无需安装所有 openldap-devel
最佳答案
通过在 AmazonLinux EC2 机器上运行以下命令,我设法弄清楚 useradd
属于哪个包:
$ yum whatprovides /usr/sbin/useradd
2:shadow-utils-4.1.5.1-24.amzn2.x86_64 : Utilities for managing accounts and shadow password files
Repo : amzn2-core
Matched from:
Filename : /usr/sbin/useradd
因此,将我的 Dockerfile 更改为以下内容使其工作:
FROM amazonlinux
RUN yum -y install python3 \
python3-pip \
shadow-utils
关于docker - useradd 不在 amazonlinux 基础镜像中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57072518/