【发布时间】:2021-09-17 00:35:24
【问题描述】:
我有一个简单的 SpringBoot 应用程序。这是我的 Dockerfile
FROM openjdk:18-jdk
LABEL version="1.0"
ARG PROJECT_NAME="test"
ARG PROJECT_VERSION="0.0.1"
ARG JAR_FILE="${PROJECT_NAME}-${PROJECT_VERSION}.jar"
ARG APP_HOME=/opt/deployment
ARG PROJECT_HOME=${APP_HOME}/${PROJECT_NAME}
COPY target/${JAR_FILE} ${PROJECT_HOME}/${JAR_FILE}
# Change working directory
WORKDIR ${PROJECT_HOME}
# Entrypoint
ENTRYPOINT ["java", "-jar", ${JAR_FILE}]
当我运行它时,我收到以下错误:
/bin/sh: [java,: command not found
但是当我在 ENTRYPOINT 中提供直接 jar 文件(todo-0.0.1.jar)而不是 ${JAR_FILE} 时,它正在工作。如何在 ENTRYPOINT 中使用变量?
请帮忙
【问题讨论】: