【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
相关推荐
AKA__Zas几秒前
初识多线程plus(2.0)
java·开发语言·学习方法
布朗克1688 分钟前
33 设计模式精讲
java·单例模式·设计模式
willhuo17 分钟前
射击训练系统 Docker 部署方案(OpenCloudOS 9.4)
运维·docker·容器
码语智行22 分钟前
基于word模板导出人员信息
java
“码”力全开29 分钟前
解耦安防黑盒:基于 Docker 容器化与 GB28181/RTSP 双协议架构的 AI 边缘计算视频平台(全源码交付)
人工智能·docker·架构
西凉的悲伤30 分钟前
redis和数据库实现分布式锁
java·数据库·redis·分布式
weixin_5231853235 分钟前
Java内存模型详解:栈、堆、方法区、本地方法栈与程序计数器
java·开发语言
ywl47081208735 分钟前
泛型extends和super的区别
java
Plastic garden37 分钟前
K8s(12)RuoYi on K8s 全流程 · 全思路 · 全排错 · 全配置
云原生·容器·kubernetes