docker打包部署spring boot应用(mysql+jar+Nginx)

简介: docker打包部署spring boot应用(mysql+jar+Nginx)

这个还是太简单了,但是同时也为我们后面部署铺好了路,大家可以看看这篇文章。会从我们dockerfile的编写、仓库、push、yaml文件编写、监控写得比较清楚,唯一不知的就是滚动更新没有用helm,下次一定

完整部署【dockefile+k8s+监控】

一、基本准备

小唐拿的就是之前放置在我们服务器上的应用进行部署,主要就是mysql和jar还有Vue的部署。

目前已经有的是jar、已经打包好的vue

项目参考:小破站数据大屏可视化(Vue+spring boot+Hadoop+嗅探)

效果展示:http://1.12.64.113/screenpage

二、mysql部署

docker run -d --name mysql \
    --restart=always \
  -p 3306:3306 \
  -v mysql:/etc/mysql/ \
  -v /tmp/mysql:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=12345 \
    mysql:8 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci 

运行

docker exec -it mysql mysql  -uroot -p

远程连接一下

然后我们再将我们数据库往我们刚刚应用的数据库里面复制

再去我们的数据里面进行检查

退出:Ctrl+P+Q(这样才会保存)

二、jar部署

【注意】:小唐的项目需要用到mysql然后spring boot读的就直接是本机的地址了,如果不是请修改spring boot里面mysql的读取位置

docker run -d -p 8081:8081  \
-v /home/xiaotang0711/Desktop/docker/hadoop.jar:/usr/hadoop.jar \
--name springboot java:8u111  \
java -jar /usr/hadoop.jar

我们去查看当前主机有没有成功跑起来,在电脑上输入你虚拟机的的ip地址,和我们之前定义的接口

可以可以,然后我们后端就已经完成部署了,现在我们来部署我们的前端吧

三、Nginx部署

这个就是把我们打包好的的目录以数据卷的形式移动进去

docker run  -d  -p 80:80 \
--name nginx \
-v /home/xiaotang0711/Desktop/docker/dist:/usr/share/nginx/html:ro \
nginx
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
存储 缓存 应用服务中间件
Nginx 响应头 Vary 的介绍与应用
`Vary` 头部字段在Web开发中扮演着重要角色,通过合理使用 `Vary`,可以优化缓存策略,提升Web应用的性能和响应速度。本文介绍了 `Vary` 头部字段的基本概念、作用、常见使用场景及其在Nginx中的配置方法。通过这些内容,希望读者能够更好地理解和应用 `Vary` 头部字段,提高Web应用的缓存效率和用户体验。
614 10
|
Java Maven
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
在Java项目中,启动jar包时遇到“no main manifest attribute”错误,且打包大小明显偏小。常见原因包括:1) Maven配置中跳过主程序打包;2) 缺少Manifest文件或Main-Class属性。解决方案如下:
3317 8
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
|
前端开发 JavaScript Java
Java打包jar运行时分离lib和jar
在`pom.xml`的`build`节点中,设置`packaging`为`jar`,并配置插件分离依赖库到`lib`目录和资源文件到`resources`目录。这样可以在运行时通过`-Dloader.path=lib,resources`加载外部依赖和资源文件,便于独立升级依赖库和修改资源文件,而无需重新打包程序。具体插件包括`maven-dependency-plugin`、`maven-resources-plugin`和`spring-boot-maven-plugin`等。
1106 2
|
Java Linux Docker
什么是 Docker?如何将 Spring Boot 应用程序部署到 Docker?
什么是 Docker?如何将 Spring Boot 应用程序部署到 Docker?
741 3
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
2890 3
|
负载均衡 应用服务中间件 nginx
基于Nginx和Consul构建自动发现的Docker服务架构——非常之详细
通过使用Nginx和Consul构建自动发现的Docker服务架构,可以显著提高服务的可用性、扩展性和管理效率。Consul实现了服务的自动注册与发现,而Nginx则通过动态配置实现了高效的反向代理与负载均衡。这种架构非常适合需要高可用性和弹性扩展的分布式系统。
276 4
|
负载均衡 应用服务中间件 nginx
基于Nginx和Consul构建自动发现的Docker服务架构——非常之详细
通过使用Nginx和Consul构建自动发现的Docker服务架构,可以显著提高服务的可用性、扩展性和管理效率。Consul实现了服务的自动注册与发现,而Nginx则通过动态配置实现了高效的反向代理与负载均衡。这种架构非常适合需要高可用性和弹性扩展的分布式系统。
568 3
|
前端开发 Java Docker
使用Docker容器化部署Spring Boot应用程序
使用Docker容器化部署Spring Boot应用程序
|
Java Docker 微服务
利用Docker容器化部署Spring Boot应用
利用Docker容器化部署Spring Boot应用
420 0

热门文章

最新文章