前言

今天所要讲的项目部署,并非正式环境部署,而是作为开发中的测试环境部署。随着项目模块的增多,启动的模块也随之增多,本人的电脑启动四个模块就已经卡的不行了,为了减轻电脑压力,不得不自己学着搭建一个项目部署环境。

正文

本次搭建环境: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 项目】三 || 项目部署的更多相关文章

  1. SpringBoot+SpringCloud+vue+Element开发项目——搭建开发环境

    1.新建一个项目

  2. SpringBoot+SpringCloud+vue+Element开发项目——数据库设计

    1.用户表(sys_user) CREATE TABLE `sys_user` ( `id` ) NOT NULL AUTO_INCREMENT COMMENT '编号', `name` ) NOT ...

  3. SpringBoot+SpringCloud+vue+Element开发项目——集成Druid数据源

    添加依赖 pom.xml <!--druid--> <dependency> <groupId>com.alibaba</groupId> <ar ...

  4. SpringBoot+SpringCloud+vue+Element开发项目——集成MyBatis框架

    添加mybatis-spring-boot-starter依赖 pox.xml <!--mybatis--> <dependency> <groupId>org.m ...

  5. SpringBoot+SpringCloud+vue+Element开发项目——集成Swagger文档

    在pom.xml文件中添加Maven依赖 <!--swagger--> <dependency> <groupId>io.springfox</groupId ...

  6. 基于【 springBoot +springCloud+vue 项目】一 || 项目架构简介

    一.前言 基于前期学习以及工作经验积累,持续更新基于springboot+springcloud+vue的demo项目.

  7. 基于【 springBoot +springCloud+vue 项目】一 || 后端搭建

    缘起 本项目是基于之前学习的一个Dubbo+SSM分布式项目进行升级,基于此项目对前后端分离项目.微服务项目进一步深入学习.之前学习了vue.springBoot.springCloud后,没有进行更 ...

  8. 基于【 springBoot +springCloud+vue 项目】二 || 后端框架详解

     前言 在上一篇中,我们搭建了一个-API服务提供接口模块,目的为了提供了消费方进行调用.为什么不直接在service层直接提供调用接口,而是重新创建一个接口层模块?首先我们需要对Feign有所了解. ...

  9. 基于SpringBoot + Mybatis实现SpringMVC Web项目

    一.热身 一个现实的场景是:当我们开发一个Web工程时,架构师和开发工程师可能更关心项目技术结构上的设计.而几乎所有结构良好的软件(项目)都使用了分层设计.分层设计是将项目按技术职能分为几个内聚的部分 ...

随机推荐

  1. Vue tree自定义事件注意点

    <template> <div id="Tree_ElementTree" style="height: 100%;"> <el- ...

  2. [Java读书笔记] Effective Java(Third Edition) 第 5 章 泛型

    第 26 条:请不要使用原生态类型 声明中具有一个或多个类型参数的类或者接口,就是泛型(generic). 例如List接口只有单个类型参数E, 表示列表的元素类型.这个接口全称List<E&g ...

  3. smarty {for}{forelse}

    {for} {for}{forelse}用于创建一个简单的循环. 下面的几种方式都是支持的: {for $var=$start to $end}步长1的简单循环. {for $var=$start t ...

  4. GPS模块编程之NMEA0183协议

    NMEA 0183是美国国家海洋电子协会(National Marine Electronics Association)为海用电子设备制定的标准格式.现在已经成为GPS导航设备统一的RTCM(Rad ...

  5. c++ throw异常(学习)

    #include <iostream>#include <stdio.h> using namespace std; void my_copy(const char* src_ ...

  6. osgViewer应用基础

    #ifdef _WIN32#include <windows.h>#endif#include <osgViewer/Viewer>#include <osgDB/Rea ...

  7. python3 高级编程(一) 使用__slots__

    使用__slots__的目的:限制实例的属性 用法:定义class的时候,定义一个特殊的__solts__变量,来限制实例能添加的属性. class Student(object): __slots_ ...

  8. Spring Aop(一)——Aop简介

    转发地址:https://www.iteye.com/blog/elim-2394629 1 Aop简介 AOP的全称是Aspect Oriented Programming,翻译成中文是面向切面编程 ...

  9. 提示/bin/roslyn/csc.exe权限不足

    给/bin/roslyn/csc.exe 读取/执行 权限

  10. EMC DS300B光纤交换机扩展光口license

    一.通过EMC指定的网站激活license 激活license,生成激活码需要三个信息: 1.交换机WWN号:可在交换机铭牌上查看:(16位) 2.SN号码:AQA00***9*6(11位) 3.ke ...