失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > docker部署springboot父子级项目+mysql+redis菜鸟教程

docker部署springboot父子级项目+mysql+redis菜鸟教程

时间:2022-11-24 14:41:54

相关推荐

docker部署springboot父子级项目+mysql+redis菜鸟教程

1、项目结构

本文以对tuling-admin模块部署为例。

子模块tuling-admin依赖tuling-common和tuling-security。

2、打包方式:

在tuling-single-mall上层文件夹管理模块的pom文件添加

<packaging>pom</packaging>

在没有main方法的工具模块(maven模块)的pom文件添加

<packaging>jar</packaging>

在有main方法的业务模块pom文件添加

<packaging>jar</packaging><build><resources><resource><directory>src/main/java</directory><includes><include>**/*.yml</include><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>false</filtering></resource><resource><directory>src/main/resources</directory><includes><include>**/*.yml</include><include>**/*.properties</include><include>**/*.xml</include></includes><filtering>false</filtering></resource></resources><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build>

使用springboot项目的根元素(root)的package打包

打包前的小插曲

因为项目中使用了mysql和redis,在打包前需要将xml配置文件的host替换一下

如果打包过程中报错,报错信息如下:

解决方案为:

在报错模块的pom.xml中加入:

<properties><!--打包是否测试连接数据库 --><skipTests>true</skipTests></properties>

如果打包过程中没有报错,则跳过解决方案操作。

言归正传:

打好的jar包默认在每个模块的target目录下

3、编写dockerfile文件

新创建一个docker文件夹,将上述jar包复制进去,并创建一个dockerfile文件,内容如下:

# 基础镜像使用javaFROM java:8# 作者MAINTAINER st# 将jar包添加到容器中并更名为xtt_docker.jarADD tuling-admin-0.0.1-SNAPSHOT.jar admin_docker.jarENTRYPOINT ["java","-jar","/admin_docker.jar"]#暴露8099端口作为微服务EXPOSE 8099

4、创建镜像并运行容器

将上述创建好的docker文件夹(包含jar包和Dockerfile文件)发送到服务器

(1)创建镜像

cd dockerdocker build -f Dockerfile -t admin-web .

运行容器前奏:

启动redis和mysql

docker pull mysql:5.5docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=1234 mysql:5.5

docker pull redisdocker run -itd --name redis-test -p 6379:6379 redis

(2)运行容器:

eredis和emysql为redis和mysql用于连接的镜像命名

docker run -p 8099:8099 --name admin-web --link redis-test:eredis --link mysql-test:emysql -d admin-web

(3)查看日志方法

docker logs -f -t --tail 100 容器名

查看正在运行的容器

如果觉得《docker部署springboot父子级项目+mysql+redis菜鸟教程》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。