docker-compose.yml
version: '3.7'services: {服务名}: build: environment network_mode: host restart: always container_name: {服务名} ports: - 外部端口:内部端口
Dockerfile
FROM openjdk:8-jre
# 设置时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN mkdir /app
COPY {文件}.jar /app/app.jar
ENTRYPOINT [ "java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app/app.jar"]
EXPOSE {prot}
#基于java8
FROM java:8
#创建一个目录存放jar包
RUN mkdir -p /opt/ormis/ormis-admin/config /opt/ormis/ormis-admin/logs
#复制jar包以及相关配置文件
COPY ormis-admin-1.0-SNAPSHOT.jar /ormis-admin-1.0-SNAPSHOT.jar
#添加进入docker容器后的目录
WORKDIR /opt/ormis/ormis-admin
#配置项目端口
CMD ["--server.port=7001"]
#对外暴露的端口号
EXPOSE 7001
#修改文件的创建修改时间
RUN bash -c 'touch /ormis-admin-1.0-SNAPSHOT.jar'
#运行脚本,启动springboot项目,这里我们指定加载配置文件的位置,并且通过数据卷挂载同步到容器中
ENTRYPOINT ["java","-jar","/ormis-admin-1.0-SNAPSHOT.jar","-Dspring.config.location=/opt/ormis/ormis-admin/config/bootstrap.properties,/opt/ormis/ormis-admin/config/application.yml --logging.config=/opt/ormis/ormis-admin/config/log4j2-dev.xml > /opt/ormis/ormis-admin/logs/ormis-admin.log 2>&1 &"]