基于【 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工程时,架构师和开发工程师可能更关心项目技术结构上的设计.而几乎所有结构良好的软件(项目)都使用了分层设计.分层设计是将项目按技术职能分为几个内聚的部分 ...
随机推荐
- Vue tree自定义事件注意点
<template> <div id="Tree_ElementTree" style="height: 100%;"> <el- ...
- [Java读书笔记] Effective Java(Third Edition) 第 5 章 泛型
第 26 条:请不要使用原生态类型 声明中具有一个或多个类型参数的类或者接口,就是泛型(generic). 例如List接口只有单个类型参数E, 表示列表的元素类型.这个接口全称List<E&g ...
- smarty {for}{forelse}
{for} {for}{forelse}用于创建一个简单的循环. 下面的几种方式都是支持的: {for $var=$start to $end}步长1的简单循环. {for $var=$start t ...
- GPS模块编程之NMEA0183协议
NMEA 0183是美国国家海洋电子协会(National Marine Electronics Association)为海用电子设备制定的标准格式.现在已经成为GPS导航设备统一的RTCM(Rad ...
- c++ throw异常(学习)
#include <iostream>#include <stdio.h> using namespace std; void my_copy(const char* src_ ...
- osgViewer应用基础
#ifdef _WIN32#include <windows.h>#endif#include <osgViewer/Viewer>#include <osgDB/Rea ...
- python3 高级编程(一) 使用__slots__
使用__slots__的目的:限制实例的属性 用法:定义class的时候,定义一个特殊的__solts__变量,来限制实例能添加的属性. class Student(object): __slots_ ...
- Spring Aop(一)——Aop简介
转发地址:https://www.iteye.com/blog/elim-2394629 1 Aop简介 AOP的全称是Aspect Oriented Programming,翻译成中文是面向切面编程 ...
- 提示/bin/roslyn/csc.exe权限不足
给/bin/roslyn/csc.exe 读取/执行 权限
- EMC DS300B光纤交换机扩展光口license
一.通过EMC指定的网站激活license 激活license,生成激活码需要三个信息: 1.交换机WWN号:可在交换机铭牌上查看:(16位) 2.SN号码:AQA00***9*6(11位) 3.ke ...