ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

使用podman部署springboot项目

2026/8/16 3:56:43 拓冰建站 浏览量
使用podman部署springboot项目

1、mysql容器

创建卷目录结构

cd /wtdata/ccompose/weifuwu
mkdir -p mysql57/{conf,data,logs}

 

启动mysql容器实例

podman run -d -p 3306:3306 \
--name mysql57 \
-v /wtdata/ccompose/weifuwu/mysql57/conf:/etc/mysql/conf.d:Z \
-v /wtdata/ccompose/weifuwu/mysql57/logs:/logs:Z \
-v /wtdata/ccompose/weifuwu/mysql57/data:/var/lib/mysql:Z \
-e MYSQL_ROOT_PASSWORD=123456 \
mysql:5.7

 

进入容器

podman exec -it mysql57 /bin/bash

 

链接mysql建库建表

mysql -uroot -p123456CREATE DATABASE `bigdata` /*!40100 DEFAULT CHARACTER SET utf8mb4 */;use bigdataCREATE TABLE `t_customer` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`cname` varchar(50) NOT NULL,
`age` int(11) NOT NULL,
`phone` varchar(20) NOT NULL,
`sex` tinyint(4) NOT NULL,
`birth` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4

 

2、redis容器

 

cd /wtdata/ccompose/weifuwu
mkdir -p redis7215/{conf,data}

 

还需要一份预配置的redis.conf文件放到conf目录下

podman run -d -p 6379:6379 \
--name redis7215 \
-v /wtdata/ccompose/weifuwu/redis7215/conf/redis.conf:/etc/redis/redis.conf:z \
-v /wtdata/ccompose/weifuwu/redis7215/data:/data:z \
redis:7.2.15 redis-server /etc/redis/redis.conf

 


3、微服务容器


用maven将IDEA创建的springboot项目打成jar包 redisStudy-0.0.1-SNAPSHOT.jar

编写Dockfile文件,与jar包在同一目录

# 使用 Eclipse Temurin 25 JRE 轻量级镜像(基于 Alpine,体积小)jdk版本要与我们springboot项目中一致
FROM eclipse-temurin:25-jre-alpine# 维护者信息(替代弃用的 MAINTAINER)
LABEL maintainer="wt"# 创建临时文件目录(用于 Spring Boot 的 /tmp 挂载点)
VOLUME /tmp# 复制 JAR 包到容器并重命名为 app.jar
COPY redisStudy-0.0.1-SNAPSHOT.jar app2.jar# 可选:设置时区为中国时区(Alpine 默认 UTC)
# RUN apk add --no-cache tzdata && cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && rm -rf /var/cache/apk/*# 启动命令,添加 JVM 优化参数(随机数生成加速)
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app2.jar"]# 暴露 7777 端口(与 Spring Boot 配置文件一致)
EXPOSE 7777

 

podman build -t springboot-redis-mysql-java25:latest .

 

端口要与springboot项目中的保持一致

podman run -d -p 7777:7777 --name my-springboot springboot-redis-mysql-java25:latest

 

整个项目部署完成。