java项目打包成docker镜像与k8s运行的镜像
1.打包成docker镜像,Dockerfile如下预留一个 $JAVA_OPTS 参数,接收启动镜像时的java参数FROM openjdk:8-jdk-alpineADD apicenter-1.0.jar apicenter.jarENTRYPOINT ["/bin/sh", "-c", "java $JAVA_OPTS -jar /apicenter.jar"]打包:docker buil
·
1.打包成docker镜像,Dockerfile如下
预留一个 $JAVA_OPTS 参数,接收启动镜像时的java参数
FROM openjdk:8-jdk-alpine
ADD apicenter-1.0.jar apicenter.jar
ENTRYPOINT ["/bin/sh", "-c", "java $JAVA_OPTS -jar /apicenter.jar"]
打包:docker build -t apicenter:v1.0 ./
启动:docker run -d --name apicenter -e JAVA_OPTS="-Dspring.profiles.active=test -DXmx=1024m -DXms=1024m" -p 8080:8080 apicenter:v1.0
2.docker与k8s通用的镜像,k8s在配置文件中通过 args 参数向容器注入参数,因此不能用上面的方式
FROM openjdk:8-jdk-alpine
ADD apicenter-es-1.0-SNAPSHOTT.jar apicenter.jar
ENTRYPOINT ["java","-jar","/apicenter.jar"]
直接用这种方式,打成镜像,k8s调度时,在k8s的配置文件的 args 参数下配置 多个java项目需要的参数就会同步到 Pod中
查看容器是否启用了参数,1.先运行镜像,2.docker exec -it xxx sh ,3.进入容器后输入 ps -ef 查看进程参数
更多推荐
已为社区贡献4条内容
所有评论(0)