我正在尝试在下Dockerfile
之前创建Docker
图像。它必须安装Kerberos
客户端。
Dockerfile:
FROM node:latest
RUN export DEBIAN_FRONTEND=noninteractive
RUN apt-get -qq update
RUN apt-get -qq install krb5-user libpam-krb5
RUN apt-get -qq clean
COPY / ./
EXPOSE 3000
CMD ["npm", "start"]
来自Dockerfile的下一个命令RUN apt-get -qq install krb5-user libpam-krb5
要求我输入交互式提示符的值,如下所示:
Default Kerberos version 5 realm:
关键是即使我写入值并按回车键,命令也不会终止。出了什么问题以及如何解决?
你需要 apt 的 -y
参数
FROM node:latest
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get -qq update &&
apt-get -yqq install krb5-user libpam-krb5 &&
apt-get -yqq clean
COPY / ./
EXPOSE 3000
CMD ["npm", "start"]
请注意,每个RUN
指令都会在图像中创建一个额外的层。这意味着,clean
命令将创建一个新图层,但所有包缓存将保留在其他图层中。因此,减少这些指令的数量会很好。它将帮助您缩小图像大小。