如何将 JAVA_OPTS 传递给 docker 容器中的 tomcat?
Posted
技术标签:
【中文标题】如何将 JAVA_OPTS 传递给 docker 容器中的 tomcat?【英文标题】:How can I pass JAVA_OPTS to tomcat in a docker container? 【发布时间】:2019-01-24 21:06:15 【问题描述】:我想使用某个配置文件运行我的 spring-boot 应用程序。因此,我需要将-Dspring.profiles.active=dev
参数传递给JVM。
我的 dockerfile 看起来像这样:
FROM tomcat:9.0.10-jre8
EXPOSE 8080
ENV JAVA_OPTS="-Dspring.profiles.active=dev"
COPY myapp.war /usr/local/tomcat/webapps/myapp.war
应用程序启动,但似乎没有设置带有配置文件名称的 JVM 选项。 我错过了什么?
【问题讨论】:
【参考方案1】:只需将其添加到您的 Dockerfile
中即可:-
ENV spring.profiles.active=dev
下面是其他选项,通过添加一个入口点:-
ENTRYPOINT ["java","-Dspring.profiles.active=container","-jar","/app.jar"]
【讨论】:
以上是关于如何将 JAVA_OPTS 传递给 docker 容器中的 tomcat?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Github Secret 作为环境变量传递给 Docker?
如何将环境变量从 docker-compose 传递给项目?
如何将 -mem 传递给 dockerized Play 应用程序
如何将环境变量传递给 mongo docker-entrypoint-initdb.d?
如何将 application.properties 传递给 Docker 容器中的 Spring Boot 应用程序?