环境搭建
安装Linux虚拟机
省略,我个人比较习惯使用VM ware,所以我使用的是VM ware,虽然可能安装镜像稍微麻烦点。
安装Docker
👉Docker安装👈
卸载旧版本
1
2
3
4
5
6
7
8sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine设置存储库
1
2
3
4sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo安装Docker
1
sudo yum install docker-ce docker-ce-cli containerd.io
启动Docker
1
2
3
4
5启动docker
sudo systemctl start docker
查看其版本
sudo docker -v
Docker version 20.10.11, build dea9396配置Docker加速,百度解决
Docker安装mysql
下载MySQL镜像
1
2
3
4
5下载MySQL5.7镜像
docker pull mysql:5.7
等待下载成功
查看镜像
docker images使用镜像创建容器
1
2
3
4
5
6docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7- -v:将宿主机的文件夹映射到容器中的对象
- -e:镜像提供的相关参数变量
- -d:选择的镜像以及版本
- –name:镜像名称
- -p:将容器的端口映射到宿主机
修改MySQL配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20进入映射的目录
cd /mydata/mysql/conf
创建配置文件并录入配置
cat <<EOF> my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
EOF
重启docker容器
docker restart mysql(可选操作)设置MySQL容器自启动
1
docker update mysql --restart=always
Docker安装Redis
下载Redis镜像
1
2
3
4
5下载最新版本Redis镜像
docker pull redis
等待下载完成
查看镜像
docker images准备外部配置文件
1
2
3
4
5
6创建配置文件目录
mkdir -p /mydata/redis/conf
创建配置文件
touch /mydata/redis/conf/redis.conf
设置redis数据持久化
echo "appendonly yes" >> /mydata/redis/conf/redis.conf使用镜像创建容器
1
2
3
4创建Redis容器
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf测试Redis是否可以正常使用
创建Maven工程
创建Maven主工程:gulimall
分别创建Maven子工程:
- gulimall-product:商品服务
- gulimall-order:订单服务
- gulimall-ware:仓储服务
- gulimall-coupon:优惠券服务
- gulimall-member:会员服务
子工程使用相同的Maven依赖,如下:
1 |
|
创建数据库并执行SQL语句
省略
人人开源
下载人人开源的
renren-fast
以及renren-fast-vue
项目
renren-fast
- 复制renren-fast项目到gulimall
- 创建数据库gulimall-admin并使用sql文件对数据库进行初始化
- 修改配置文件,设置正确的数据库地址
- 启动项目
renren-fast-vue
安装node环境
设置npm淘宝镜像
1
npm config set registry http://registry.npm.taobao.org/
执行
npm install
启动
1
npm run dev
访问:localhost:8001,查看是否成功启动。默认账号密码:admin/admin
快速开发-逆向工程
下载人人开源的
renren-generator
项目
- 打开项目,下载相关Maven依赖
- 修改数据库配置文件运行项目
- 生成逆向工程文件
- 将生成的逆向工程文件复制到项目中并解决其报错情况
gulimall-common
依赖
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<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>gulimall</artifactId>
<groupId>com.imxushuai.gulimall</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>gulimall-common</artifactId>
<dependencies>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.2.0</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpcore</artifactId>
<version>4.4.15</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
</project>复制工具类到gulimall-common
其他微服务
其他微服务拷贝逆向工程文件后需要做一些配置
添加依赖
1
2
3
4
5
6<!-- gulimall-common -->
<dependency>
<groupId>com.imxushuai.gulimall</groupId>
<artifactId>gulimall-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>添加配置文件:application.yml(需要删除application.properties)
注意每个微服务的数据库url不一样以及端口不一样
1
2
3
4
5
6
7
8
9
10
11
12
13spring:
datasource:
username: root
password: root
url: jdbc:mysql://192.168.149.151:3306/gulimall_sms
driver-class-name: com.mysql.jdbc.Driver
mybatis-plus:
mapper-locations: classpath:/mapper/**/*.xml
global-config:
db-config:
id-type: auto
server:
port: 7000启动类添加
@MapperScan
注解1
2
3
4
5
6
7
8
9
10
11
12
13
14
15package com.imxushuai.gulimall.coupon;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
"com.imxushuai.gulimall.coupon.dao") (
public class GulimallCouponApplication {
public static void main(String[] args) {
SpringApplication.run(GulimallCouponApplication.class, args);
}
}启动测试,查看调用API是否正常