【Docker】Docker部署Java程序

Maven中使用打包插件

xml 复制代码
<build>
        <finalName>duanjian</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <mainClass>com.kewu.system.SysApplication</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>com.github.ulisesbocchio</groupId>
                <artifactId>jasypt-maven-plugin</artifactId>
                <version>3.0.5</version>
            </plugin>
        </plugins>
    </build>

不使用插件打包会出现找不到主清单的问题

dockerfile镜像构建

最后打包的镜像就是docker-demo这个目录。

dockerfile

复制代码
# 指定基础镜像
FROM java:8-alpine
 
# 拷贝 java 项目包
COPY ./duanjian.jar /tmp/app.jar
 
# 暴露端口
EXPOSE 8090
 
# 入口,java项目的启动命令
ENTRYPOINT java -jar /tmp/app.jar

执行命令

复制代码
docker build -t duanjian:1.0 .

docker run -d --name duanjian -p 8080:8080 duanjian:1.0
相关推荐
niucloud-admin37 分钟前
NIUCLOUD PHP SAAS上门家政使用文档:城市管理
java·前端·php
霸道流氓气质1 小时前
智能客服组件:分层意图识别、RAG Advisor 与人工转接状态机的 Vue3 + Spring AI 生产级实战
java·人工智能·spring
captain3762 小时前
MyBatis操作数据库(入门2)
java·数据库·spring boot·后端·spring·mybatis
心中有你02142 小时前
Java实现Dijkstra最短路径算法(邻接表 + 优先队列)
java·数据库·算法
步行cgn2 小时前
Spring MVC + Thymeleaf 模板解析失败:从 500 错误到页面正常显示
java·spring·mvc
lgcgkCQ3 小时前
【AI 转型实战 1】SpringAI 入门:搭建基础大模型对话能力
java·ai·agent·rag·spring ai·mcp·langchain4j
Wang's Blog3 小时前
Java 项目实战:交友项目 - 用户体系集成总结
java·开发语言·交友
学到老活到老3 小时前
第 24 集:配置文件写了 80,Spring Boot 为什么读到 90?
java·后端·spring
tongyiixiaohuang4 小时前
供应商主数据同步实战:从易快报到金蝶云星空的单一策略落地
java·网络·数据库
鱼宵4 小时前
取集合第一个元素,Java 为什么要写三种写法?
java·windows·python·java21