我正在尝试将一个整体应用程序移植到 k8s pod。理论上,Pod 被认为是短暂的,建议使用服务概念来提供静态 IP。但到目前为止,在我的测试中,我还没有看到 POD IP 被更改。那么现在的问题是 k8s 什么时候会为我的 POD 分配一个新的 IP?
我已经创建了具有固定主机名的 POD(不使用任何控制器),并且它们绑定到单个节点。那么节点和主机名永远不会改变,POD也永远不会被删除?那么在这种特殊情况下,POD IP什么时候可以改变。我查看了文档,这对我来说并不清楚。
我正在尝试使用不带任何操作系统的JRE创建映像。我尝试了这个不起作用的Dockerfile。
FROM openjdk:11.0.1-jdk-oraclelinux7 as JDK
RUN jlink --no-header-files --no-man-pages --add-modules java.base,java.desktop,java.logging,java.sql --output /jre
FROM scratch
#FROM oraclelinux:7-slim
COPY --from=JDK /jre /jre
ARG JAR_FILE
COPY ${JAR_FILE} /app.jar
CMD ["/jre/bin/java", "-jar", "/app.jar"]
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
standard_init_linux.go:190: exec user process caused "no such file or directory"
Run Code Online (Sandbox Code Playgroud)
如果我用oraclelinux替换草稿,它将正常工作。为什么我不能使用草稿的任何线索。使用刮擦的原因是为了减小图像的尺寸。
任何帮助表示赞赏。