谷粒商城一

谷粒商城一

  • [1. 项目介绍](#1. 项目介绍)
    • [1.1 微服务架构图](#1.1 微服务架构图)
    • [1.2 微服务划分图](#1.2 微服务划分图)
  • [2. 项目环境搭建](#2. 项目环境搭建)
    • [2.1 虚拟机搭建环境](#2.1 虚拟机搭建环境)
    • [2.2 Linux 安装 docker、配置镜像加速](#2.2 Linux 安装 docker、配置镜像加速)
    • [2.3 Docker 配置 MySQL、设置自启动](#2.3 Docker 配置 MySQL、设置自启动)
      • [2.3.1 安装 MySQL5.7](#2.3.1 安装 MySQL5.7)
      • [2.3.2 修改 mysql 配置文件](#2.3.2 修改 mysql 配置文件)
    • [2.4 Docker 配置 Redis 并设置持久化](#2.4 Docker 配置 Redis 并设置持久化)
    • [2.5 安装 jdk Maven 镜像 idea 及其插件](#2.5 安装 jdk Maven 镜像 idea 及其插件)
    • [2.6 初始化项目架构、创建仓库](#2.6 初始化项目架构、创建仓库)
      • [2.6.1 码云创建 Maven 仓库, git 克隆父工程](#2.6.1 码云创建 Maven 仓库, git 克隆父工程)
      • [2.6.2 新建子模块](#2.6.2 新建子模块)
      • [2.6.3 过滤上传 git 的垃圾文件](#2.6.3 过滤上传 git 的垃圾文件)
      • [2.6.4 项目提交到 Gitee,并推送](#2.6.4 项目提交到 Gitee,并推送)
    • [2.7 导入 mysql 数据库表](#2.7 导入 mysql 数据库表)

1. 项目介绍

1.1 微服务架构图

1.2 微服务划分图

2. 项目环境搭建

2.1 虚拟机搭建环境

参考:VMware CentOs 保姆级安装教程

2.2 Linux 安装 docker、配置镜像加速

bash 复制代码
# 1. 卸载之前的docker
 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
                  
# 2.需要的安装包
yum install -y yum-utils
 
# 3.设置镜像的仓库
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
# 默认是从国外的,不推荐
# 推荐使用国内的
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 更新yum软件包索引
yum makecache 
 
# 4.安装docker相关的 docker-ce 社区版 而ee是企业版
yum install docker-ce docker-ce-cli containerd.io
# 5、启动docker
docker systemctl start docker
# 6. 使用docker version查看是否按照成功
docker version

配置阿里云镜像加速

因为 Docker Hub 是国外网站,需要配置国内镜像进行加速

  1. 登录阿里云找到容器服务
  2. 配置使用,输入到 ssh 回车
bash 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://on5zpx5o.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2.3 Docker 配置 MySQL、设置自启动

2.3.1 安装 MySQL5.7

bash 复制代码
docker pull mysql:5.7
 
# 运行容器
sudo docker 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=1234 \
-d mysql:5.7
# 参数说明 -p 3312:3306 将容器的3306端口映射到主机的3312端口
# -v 宿主机文件目录:容器内目录  将容器内文件挂载到宿主机上
# -e MYSQL_ROOT_PASSWORD=root 设置mysql密码为root
# -d 后台启动
# --name 给启动容器起名字
 
# 使用docker ps 查看启动的容器

2.3.2 修改 mysql 配置文件

bash 复制代码
# 进入配置文件挂载的目录下
cd /mydata/mysql/conf
 
# 配置文件my.cnf
vim my.cnf
 

主要修改编码为 utf8

bash 复制代码
 
# 新增配置文件内容
[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
 
 
bash 复制代码
# 修改配置文件之后,重启容器
docker restart mysql

# 设置自启动
docker update mysql --restart=always

2.4 Docker 配置 Redis 并设置持久化

bash 复制代码
# 1、创建配置文件
mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf
# 2、下载镜像
docker pull redis
# 3、启动容器
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
# 4、进入redis客户端
docker exec -it redis redis-cli  

修改 Redis 配置文件

bash 复制代码
vim /mydata/redis/conf/redis.conf

aof 持久化方式

bash 复制代码
appendonly yes
bash 复制代码
 
# 保存
docker restart redis
 
# 进入redis客户端
docker exec -it redis redis-cli
# 设置 Redis 容器在 Docker 启动的时候自启动
docker update redis --restart=always

2.5 安装 jdk Maven 镜像 idea 及其插件

JDK 安装
IDEA 初始化

2.6 初始化项目架构、创建仓库

2.6.1 码云创建 Maven 仓库, git 克隆父工程


通过仓库地址克隆项目到本地

2.6.2 新建子模块

  • gulimall-xxx(product/order/ware/coupon/member)
  • 每一个子模块的包名为 cn.tedu.gulimall.xxx(product/order/ware/coupon/member)
  • 在每个子模块下引入 web、openfeign

新建 Maven 模块 gulimall-xxx,导入依赖 pom.xml


导入依赖

xml 复制代码
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>

父工程的pom.xml,并把父工程添加到maven

2.6.3 过滤上传 git 的垃圾文件

点开父工程的 .gitignore 文件,添加如下内容

lua 复制代码
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
.mvn/wrapper/maven-wrapper.jar

**/mvnw
**/mvnw.cmd
**/.mvn
**/target/
.idea
**/.gitignore
HELP.md

也可以直接把这些文件删除,这些文件是用不到的

2.6.4 项目提交到 Gitee,并推送


2.7 导入 mysql 数据库表

  1. 创建数据库gulimall_oms,gulimall_pms,gulimall_sms,gulimall_ums,gulimall_wms,基字符集选择utf8mb4

  2. 使用 DataGrip 分别创建五个数据库,编码utf8mb4。

  3. 双击打开数据库,新建查询,将sql语句复制粘贴运行

随便点开一个表,发现没有中文乱码

相关推荐
fangzhanpeng1685 天前
快速掌握C#语言基础知识点(1.基础数据类型)
开发语言·c#·1024程序员节
无己心7 天前
面向多平台 AI 搜索引擎的适配层架构设计
前端·人工智能·搜索引擎·ai·1024程序员节
u01030552713 天前
AI驱动的安卓UI自动生成功能实现
人工智能·1024程序员节
u01030552714 天前
长株潭智能体赋能腾讯元器链接共享
1024程序员节
云贝贝贝15 天前
OceanBase认证体系介绍与备考指南
运维·服务器·oceanbase·1024程序员节
u01030552715 天前
Java图像处理实战指南
人工智能·1024程序员节
u01030552716 天前
Java AWT鼠标事件全解析
人工智能·1024程序员节
u01030552718 天前
Java实用类应用精讲
人工智能·1024程序员节
u01030552718 天前
Java I/O核心操作实战
人工智能·1024程序员节
u01030552719 天前
ArrayList操作详解与实战应用
人工智能·1024程序员节