基于【 springBoot +springCloud+vue 项目】三 || 项目部署
前言
今天所要讲的项目部署,并非正式环境部署,而是作为开发中的测试环境部署。随着项目模块的增多,启动的模块也随之增多,本人的电脑启动四个模块就已经卡的不行了,为了减轻电脑压力,不得不自己学着搭建一个项目部署环境。
正文
本次搭建环境:VM虚拟机+centos7+docker
本次主要还是学习环境搭建,其中配置了两台虚拟的centos7系统。
第一台虚拟系统:安装docker容器,在容器中安装了redis,activeMq,mysql
第二台虚拟系统:安装jdk1.8环境
两台虚拟系统都配置了静态的固定ip地址,第一台地址192.168.22.2,第二台地址192.168.22.5(地址可以自己随意定)
一、docker安装和使用
这里就给出一个网址:https://www.runoob.com/docker/docker-container-usage.html
之前自己在虚拟机中配置过redis,mysql等,过程非常的繁琐,使用docker大大提升了速度,而且操作非常的简单,这里就不在详细说了,上面的教程很详细,我也是跟着教程安装的,后面的项目中如果遇到坑了在慢慢的填在此部分。
mysql启动命令:
docker run --name mysql01 -p 4306:4306 -e MYSQL_ROOT_PASSWORD=root -d mysql
redis启动命令:
docker run -d --name myredis -p 6379:6379 redis --requirepass "root"
二、centos7安装
1、安装镜像包
我们使用的是vm虚拟机,已经提供好了镜像包(有需要的联系我)
第一步:非常简单,打开虚拟机,添加提供的镜像文件,确定就OK了

第二步:启动后输入账号和密码就开启了centos7了。
下面要重点说的是怎么配置固定的静态ip地址
2、配置静态ip地址
第一步:虚拟机中,选择设置

第二步:根据下图设置网络适配器为NAT模式

第三步:选择名称为VMnet8 NAT模式,修改子网IP设置,实现自由设置固定IP,IP范围为192.168.2.2-255

第四步:NAT设置

此处设置与上一步在一个相同网段,记住该网关ip,后面会用到
第五步:配置自己主机具体VMnet8本地地址参数,找到CMnet8,然后右键-》属性-》找到ipv4

第六步:重点说明 图2中的IP地址随意设置,但是要保证不能跟你要设置虚拟机的固定IP一样。

第七步:修改centos7网卡配置参数
1、进入centos7命令界面
2、cd /etc/sysconfig/network-scripts/
3、vi ifcfg-enp0s3
配置参数如下:

参数修改完 :wq 保存并退出
第八步:测试看看是否配置成功了
1、查看修改后的固定IP为192.168.22.2,配置是否正确?
ping 192.168.22.2
2、测试虚拟机中的CentOS 7系统是否能连外网,有数据返回,说明可以连接外网
ping baidu.com
3、测试本机是否能ping通虚拟机的固定IP,有数据返回,说明可以使用终端工具正常连接
使用本机 ,cmd命令调出窗口 :ping 192.168.22.2
三、使用springBoot导出jar包
springBoot自带tomcat了,只用打成jar包,使用java -jar XX.jar命令就可以运行项目了,也可以打成war包部署到其他服务器,此处就简单说一下打成jar的部署方式
1、设置pom文件,不用添加maven打包插件,否则报错
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>pinyougou-parent</artifactId>
<groupId>com.pinyougou</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion> <artifactId>pinyougou-manager-web</artifactId>
<dependencies>
<dependency>
<groupId>com.pinyougou</groupId>
<artifactId>pinyougou-sellergoods-api</artifactId>
<version>0.0.1-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
</dependencies> </project>
2、启动类模块中的pom配置,添加如下配置
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!-- 指定该Main Class为全局的唯一入口 -->
<mainClass>com.pinyougou.SellerGoodsServiceApplication</mainClass>
<layout>ZIP</layout>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中-->
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
3、使用idea中的maven编译打包

4、最后在我们项目汇总的target中就有了jar包

四、运行jar包
1、分别把sellergoods服务模块jar包,Eureka注册中心jar包复制到192.168.22.5的centos7的/usr/home/pinyougou文件中
使用java -jar XX.jar命令运行jar包
2、测试
输入http://192.168.22.5:8761/ 看是否启动了注册中心

4、调用商品服务模块,测试是否返回数据

如果有数据返回,说明我们环境搭建成功了。
本人联系方式QQ:1136069753,后期项目会发布共享,项目持续更新
基于【 springBoot +springCloud+vue 项目】三 || 项目部署的更多相关文章
- SpringBoot+SpringCloud+vue+Element开发项目——搭建开发环境
1.新建一个项目
- SpringBoot+SpringCloud+vue+Element开发项目——数据库设计
1.用户表(sys_user) CREATE TABLE `sys_user` ( `id` ) NOT NULL AUTO_INCREMENT COMMENT '编号', `name` ) NOT ...
- SpringBoot+SpringCloud+vue+Element开发项目——集成Druid数据源
添加依赖 pom.xml <!--druid--> <dependency> <groupId>com.alibaba</groupId> <ar ...
- SpringBoot+SpringCloud+vue+Element开发项目——集成MyBatis框架
添加mybatis-spring-boot-starter依赖 pox.xml <!--mybatis--> <dependency> <groupId>org.m ...
- SpringBoot+SpringCloud+vue+Element开发项目——集成Swagger文档
在pom.xml文件中添加Maven依赖 <!--swagger--> <dependency> <groupId>io.springfox</groupId ...
- 基于【 springBoot +springCloud+vue 项目】一 || 项目架构简介
一.前言 基于前期学习以及工作经验积累,持续更新基于springboot+springcloud+vue的demo项目.
- 基于【 springBoot +springCloud+vue 项目】一 || 后端搭建
缘起 本项目是基于之前学习的一个Dubbo+SSM分布式项目进行升级,基于此项目对前后端分离项目.微服务项目进一步深入学习.之前学习了vue.springBoot.springCloud后,没有进行更 ...
- 基于【 springBoot +springCloud+vue 项目】二 || 后端框架详解
前言 在上一篇中,我们搭建了一个-API服务提供接口模块,目的为了提供了消费方进行调用.为什么不直接在service层直接提供调用接口,而是重新创建一个接口层模块?首先我们需要对Feign有所了解. ...
- 基于SpringBoot + Mybatis实现SpringMVC Web项目
一.热身 一个现实的场景是:当我们开发一个Web工程时,架构师和开发工程师可能更关心项目技术结构上的设计.而几乎所有结构良好的软件(项目)都使用了分层设计.分层设计是将项目按技术职能分为几个内聚的部分 ...
随机推荐
- SpringBoot/SpringMVC 下载本地文件
页面代码: <!DOCTYPE html> <html lang="utf-8"> <meta http-equiv="Content-Ty ...
- 背包DP 方案数
题目 1 P1832 A+B Problem(再升级) 题面描述 给定一个正整数n,求将其分解成若干个素数之和的方案总数. 题解 我们可以考虑背包DP实现 背包DP方案数板子题 f[ i ] = f[ ...
- treeview所有节点递归解法及注意!!!!!!!!!!!!!!!!!
好吧 我把所有之前写的都删了,只为这一句话“所有变量切记小心在递归函数内部初始化”,包括:布尔,变量i,等等.至于为什么....递归就是调用自己,你初始化以后的变量,等再次调用的时候又回来了 bool ...
- Facebook币Libra学习-1.核心概念
Libra区块链是一个基于Libra协议的加密认证的分布式数据库.本文将简略介绍Libra协议的核心概念.其详细说明请参阅Libra技术白皮书. Libra区块链由分布式的Validator节点网络维 ...
- JDBC的异常处理方式
A: try...catch(...) {...} finally {} B: 关闭ResultSet,Statement , Connection import java.sql.Connectio ...
- Unity3d NavMeshAgent 寻路问题(1)
navMeshAgent调用setDestination 后,会有一个计算路径的时间,计算过程中pathPending为true. 在这个过程中remainingDistance一直为0.
- QFramework 使用指南 2020(九):Res Kit(3)异步加载 与 异步队列加载
在上一篇我们了解了 Res Kit 的一些背后设计原理,讲解了一些概念,比如:开发阶段.真机阶段等. 在这一篇,我们回到 Res Kit 使用细节上. 在 Res Kit 的第一篇,我们介绍了 Res ...
- js中的正则表达式小结1
正则表达式总结 创建正则对象:var regex=new RegExp(/\d/); 一般都用直接量,写法更简洁:var regex=/\d/; test()方法用来验证字符串是否符合规则,返回tru ...
- c++学习笔记_3
前言:本笔记所对应的课程为中国大学mooc中北京大学的程序设计与算法(三)C++面向对象程序设计,主要供自己复习使用,且本笔记建立在会使用c和java的基础上,只针对与c和java的不同来写 类和对象 ...
- C/C++.字符串分割
1.ZC:只测试使用了 自己改编的函数SplitStr_ZZ(...),其它的 未测试 #include <string> #include <vector> #include ...