DOCKER06_SpringBoot微服务项目打包成Docker镜像详解(三)

本文涉及的产品
云原生网关 MSE Higress,422元/月
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: DOCKER06_SpringBoot微服务项目打包成Docker镜像详解(三)

④. 基于maven进行打包,多阶段构建


  • ①. Dockerfile文件如下所示,在服务器上进行打包成功,启动容器找不到主启动类(文件参考使用)
    有哪位大佬如果知道原因,希望可以告知,感谢!!!


# 基于maven:3.5.2-jdk-8-slim这个镜像
FROM maven:3.5.2-jdk-8-slim AS buildapp
# 创建一个根目录
WORKDIR /app
# 将当前的src和pom.xml文件复制到基于maven:3.5.2-jdk-8-slim的/app目录下
COPY src .
COPY pom.xml .
# 进行maven的打包,跳过测试阶段
RUN mvn clean package -Dmaven.test.skip=true
# 将/app/target的jar包复制到/app/app.jar下
RUN cp target/*.jar app.jar
RUN ls -l
# 基于jdk的镜像
FROM openjdk:8u282-slim
# 如下操作可以让容器时间和虚拟机时间一致
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
LABEL maintainer="845195485@qq.com"
# 基于之前构建的buildapp,将/app/app.jar复制到/app.jar
COPY --from=buildapp /app/app.jar /app.jar
# 暴露8080端口
EXPOSE 8080
ENV JAVA_OPTS=""
ENV PARAMS=""
ENTRYPOINT [ "sh", "-c", "java -Djava.security.egd=file:/dev/./urandom $JAVA_OPTS -jar /app.jar $PARAMS" ]


②. 启动命令如下


docker run -e JAVA_OPTS="-Xmx512m -Xms33 -" -e PARAMS="--spring.profiles=dev --server.port=8080" -jar /app/app.jar

相关文章
|
17天前
|
Docker 容器
将本地的应用程序打包成Docker镜像
将本地的应用程序打包成Docker镜像
|
1天前
|
NoSQL PHP MongoDB
docker push推送自己搭建的镜像
本文详细介绍了如何搭建和复盘两个Web安全挑战环境:人力资源管理系统和邮件管理系统。首先,通过Docker搭建MongoDB和PHP环境,模拟人力资源管理系统的漏洞,包括nosql注入和文件写入等。接着,复盘了如何利用这些漏洞获取flag。邮件管理系统部分,通过目录遍历、文件恢复和字符串比较等技术,逐步绕过验证并最终获取flag。文章提供了详细的步骤和代码示例,适合安全研究人员学习和实践。
14 3
docker push推送自己搭建的镜像
|
17天前
|
数据库 Docker 容器
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。
Docker在现代软件开发中扮演着重要角色,通过Dockerfile自动化构建Docker镜像,实现高效、可重复的构建过程。Dockerfile定义了构建镜像所需的所有指令,包括基础镜像选择、软件安装、文件复制等,极大提高了开发和部署的灵活性与一致性。掌握Dockerfile的编写,对于提升软件开发效率和环境管理具有重要意义。
36 9
|
Java 测试技术 Docker
Spring Boot 学习研究笔记(十九)-docker部署SpringBoot 日志目录挂载
Spring Boot 学习研究笔记(十九)-docker部署SpringBoot 日志目录挂载
533 0
|
Java 应用服务中间件 Linux
使用docker部署springboot项目小白教程
使用docker部署springboot项目小白教程
556 0
|
7月前
|
Java 关系型数据库 Docker
docker打包部署spring boot应用(mysql+jar+Nginx)
docker打包部署spring boot应用(mysql+jar+Nginx)
|
7月前
|
关系型数据库 Java 数据库
docker部署postgresql数据库和整合springboot连接数据源
docker部署postgresql数据库和整合springboot连接数据源
164 0
|
7月前
|
NoSQL Java Redis
利用Docker部署一个简单的springboot项目
利用Docker部署一个简单的springboot项目
211 2
|
7月前
|
JavaScript Java jenkins
如何利用CentOS7+docker+jenkins+gitee部署springboot+vue前后端项目(保姆教程)
如何利用CentOS7+docker+jenkins+gitee部署springboot+vue前后端项目(保姆教程)
325 0