JDK的Dockerfile

openjdk(https://openjdk.org/)

也可以用微软的 https://learn.microsoft.com/zh-cn/java/openjdk/download#openjdk-17

使用debian系统

bash 复制代码
FROM openjdk:17-slim
MAINTAINER xxx

ENV SCM_PARAMS=""
ENV JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=dev -Djava.security.egd=file:/dev/./urandom"

ENV TZ PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list
RUN apt-get clean

RUN apt-get update \
	&& apt-get install -y locales apt-utils \
    && apt-get install -y --no-install-recommends vim \
    && apt-get install -y --no-install-recommends curl

ADD ./target/report-basic-*.jar /app.jar

EXPOSE 8080

ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /app.jar $SCM_PARAMS"]

azul(https://www.azul.com/downloads/?version=java-17-lts\&package=jdk#zulu)

ubuntu

bash 复制代码
FROM azul/zulu-openjdk:17
MAINTAINER e-zhangjiawei01

ENV SCM_PARAMS=""
ENV JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=dev -Djava.security.egd=file:/dev/./urandom"

ENV TZ PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#https://developer.aliyun.com/mirror/ubuntu?spm=a2c6h.13651102.0.0.3e221b11iKr4j6
RUN sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list
RUN sed -i 's/security.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list
#RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list
RUN apt-get clean
#
RUN apt-get update \
    && apt-get install -y locales apt-utils \
    && apt-get install -y --no-install-recommends vim \
    && apt-get install -y --no-install-recommends curl

ADD ./target/location-*.jar /app.jar

EXPOSE 8080
ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /app.jar $SCM_PARAMS"]

debian:

bash 复制代码
FROM azul/zulu-openjdk-debian:17
MAINTAINER xxxx

ENV SCM_PARAMS=""
ENV JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=dev -Djava.security.egd=file:/dev/./urandom"

ENV TZ PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list
RUN apt-get clean

RUN apt-get update \
	&& apt-get install -y locales apt-utils \
    && apt-get install -y --no-install-recommends vim \
    && apt-get install -y --no-install-recommends curl

ADD ./target/report-basic-*.jar /app.jar

EXPOSE 8080

ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /app.jar $SCM_PARAMS"]

aws-corretto(https://docs.aws.amazon.com/corretto/latest/corretto-17-ug/downloads-list.html)

不建议

aws-linux 和centos类似的系统

bash 复制代码
FROM amazoncorretto:17
MAINTAINER xxxx

ENV SCM_PARAMS=""
ENV JAVA_OPTS="$JAVA_OPTS -Djava.security.egd=file:/dev/./urandom"

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

# 移除已有的yum仓库文件

#RUN rm -f /etc/yum.repos.d/*
# 添加阿里云的yum仓库文件
#ADD ./Centos-7.repo /etc/yum.repos.d/
# 清理缓存并生成新的缓存
RUN yum clean all && yum makecache

RUN yum install -y vim \
    yum install -y curl

ADD ./target/report-basic-*.jar /app.jar


ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /app.jar $SCM_PARAMS"]

sapmachine(https://sap.github.io/SapMachine/)

bash 复制代码
FROM sapmachine:17-jdk-ubuntu-noble

ENV SCM_PARAMS=""
ENV JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=dev"

ENV TZ PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

RUN sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list.d/ubuntu.sources
RUN sed -i 's/security.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list.d/ubuntu.sources
RUN apt-get clean

RUN apt-get update \
    && apt-get install -y locales apt-utils \
    && apt-get install -y --no-install-recommends vim \
    && apt-get install -y --no-install-recommends curl

ADD ./target/location-*.jar /app.jar

EXPOSE 8080

ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /app.jar $SCM_PARAMS"]
相关推荐
\光辉岁月/13 分钟前
3.包装类
java·开发语言·包装类
BeiGuTing_code13 分钟前
Java动态数组(一)
java·数据结构·windows
我命由我1234523 分钟前
软件工程概念 - 可插拔性
java·后端·学习·java-ee·系统架构·软件工程·学习方法
木易 士心1 小时前
Java 后端驱动远程手机自动化:ADB + Python + 内网穿透实战全解
java·后端·智能手机·自动化
十年Java程序媛1 小时前
JVM 内存区域与对象内存布局|new 对象底层流程,对象头 MarkWord 详解
java·jvm·spring boot
FRing031 小时前
JavaScript入门到精通二十四(正则表达式、元字符、修饰符)
开发语言·前端·javascript·正则表达式
用户094248568031 小时前
第2章:Windows、WSL2 与 Docker 环境搭建Redis
java·jvm
西索斯coding1 小时前
Grok 4.7 调用一直 401 怎么办?不是 Key 过期,是 Authorization 头格式问题——排查全流程 + 修复示例
服务器·开发语言·ai·php
小物学长1 小时前
HJ212-2017 对接与环境在线监测平台设计:报文、CRC、应答、预警和传输有效率
java
171320330计算机毕设编程1 小时前
计算机毕业设计 基于springboot+vue的在线观鸟视频播放网站 LW PPT
java·大数据·vue.js·spring boot·算法·课程设计