谷粒商城基本环境配置
###虚拟机配置(192.168.56.10)
1.开启处理器虚拟化
2.安装VirtualBox(默认安装)
3.安装vagrant(默认安装)
4.配置vagrant
4.1 打开CMD,输入vagrant查看是否安装成功。
4.2 输入vagrant init centos/7初始化centos7镜像
4.3 vagrant up启动虚拟环境
4.3.1 这个命令第一次执行的时候会从官网下载centos的镜像,太慢了这个网址可以下载比较快。
http://mirrors.ustc.edu.cn/centos-cloud/centos/7/vagrant/x86_64/images/
CentOS-7-x86_64-Vagrant-2004_01.VirtualBox.box这个版本可以
4.3.2 centos下载完成,到centos的文件夹打开cmd执行下面的命令:
vagrant box add centos/7 CentOS-7-x86_64-Vagrant-2004_01.VirtualBox.box
执行完事之后回到桌面打开CMD继续执行vagrant up命令
5.连接虚拟机 vagrant ssh
6.退出虚拟机 exit;
7.虚拟机网络设置
7.1查看一下你虚拟机在笔记本上的ip,用CMD输入ipconfig
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k5La85ZT-1614657372483)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210116220349991.png)]
7.2更改C:\Users\SCH\Vagrantfile 该文件的内容为:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YC5NMLZC-1614657372485)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210116220600250.png)]
7.3重启虚拟机 vagrant reload,链接虚拟机 vagrant ssh
7.4使用命令ip addr查看是否更改成功
7.4.1测试相互 ping 端口ip
###1.docker配置
####常用命令
docker update 容器名 --restart=always //每次重新启动服务器都会启动相应的容器
docker pull 容器名:版本名 //下载容器
docker start 容器名 //启动容器
docker restart 容器名 //重启容器
docker ps //查看正在运行的容器
docker exec -it redis-cil //启动redis客户端
docker ps -a //查看所有容器
cat 文件名 //查看文件的内容 前提进入相应的文件夹
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
####2.配置阿里云镜像
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://e596sw0o.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
修改mysql的编码字符集配置文件
[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
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-V7nT0uQQ-1614657372487)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210117134957643.png)]
###3.maven
配置maven默认用jdk1.8编译项目
setting.xml
<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
###4.vscode的安装集成插件
####4.1官网下载正常安装
####4.2集成插件
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qs1UBiLa-1614657372490)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210118200408418.png)]
###5.redis redis的持久化
####5.1在docker中安装redis容器
//安装docker容器
[root@bogon vagrant]# docker pull redis
Using default tag: latest
latest: Pulling from library/redis
a076a628af6f: Already exists f40dd07fe7be: Pull complete ce21c8a3dbee: Pull complete ee99c35818f8: Pull complete 56b9a72e68ff: Pull complete 3f703e7f380f: Pull complete Digest: sha256:0f97c1c9daf5b69b93390ccbe8d3e2971617ec4801fd0882c72bf7cad3a13494
Status: Downloaded newer image for redis:latest
docker.io/library/redis:latest
//创建redis的配置文件
[root@bogon vagrant]#
[root@bogon vagrant]# mkdir -p /mydata/redis/conf
[root@bogon vagrant]# touch /mydata/redis/conf/redis.conf
[root@bogon vagrant]# cd /mydata/redis/cond
bash: cd: /mydata/redis/cond: No such file or directory
[root@bogon vagrant]# cd /mydata/redis/conf
[root@bogon conf]# ls
redis.conf
//进行IP挂载和映射
[root@bogon conf]# 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
docker: invalid reference format.
See 'docker run --help'.
[root@bogon conf]# 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
5a8ac1fa49e965194c286d466ae6350788eb3467169e2a02b0286087e5d31d04
[root@bogon conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a8ac1fa49e9 redis "docker-entrypoint.s…" 20 seconds ago Up 19 seconds 0.0.0.0:6379->6379/tcp redis
[root@bogon conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a8ac1fa49e9 redis "docker-entrypoint.s…" About a minute ago Up About a minute 0.0.0.0:6379->6379/tcp redis
//启动mysql容器
[root@bogon conf]# docker start mysql
mysql
[root@bogon conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a8ac1fa49e9 redis "docker-entrypoint.s…" 3 minutes ago Up 3 minutes 0.0.0.0:6379->6379/tcp redis
8c0d5f5077e2 mysql:5.7 "docker-entrypoint.s…" 30 hours ago Up 17 seconds 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
[root@bogon conf]# pwd
/mydata/redis/conf
[root@bogon conf]# ls
-d redis.conf -v
[root@bogon conf]# ls
-d redis.conf -v
//更改配置文件
[root@bogon conf]# vi redis.conf
/*
按i进入插入模式
appendonly yes
按ESC 输入:wq 退出并且保存更改
*/
//重启redis容器
[root@bogon conf]# docker restart redis
redis
[root@bogon conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a8ac1fa49e9 redis "docker-entrypoint.s…" 11 minutes ago Up 7 seconds 0.0.0.0:6379->6379/tcp redis
8c0d5f5077e2 mysql:5.7 "docker-entrypoint.s…" 30 hours ago Up 8 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
//启动redis的客户端
[root@bogon conf]# docker exec -it redis redis-cli
127.0.0.1:6379> set aa bb
OK
127.0.0.1:6379> get aa
"bb"
127.0.0.1:6379> exit
[root@bogon conf]# docker restart redis
redis
[root@bogon conf]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5a8ac1fa49e9 redis "docker-entrypoint.s…" 14 minutes ago Up 7 seconds 0.0.0.0:6379->6379/tcp redis
8c0d5f5077e2 mysql:5.7 "docker-entrypoint.s…" 30 hours ago Up 11 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
[root@bogon conf]# docker exec -it redis redis-cli
127.0.0.1:6379> get aa
"bb"
###6.码云SSH公钥
SCH@DESKTOP-CNT60BT MINGW64 ~/Desktop
$ git config --global user.name "SCH"
SCH@DESKTOP-CNT60BT MINGW64 ~/Desktop
$ git config --global user.email "zzsunss@163.com"
SCH@DESKTOP-CNT60BT MINGW64 ~/Desktop
$ ssh-keygen -t rsa -C "zzsunss@163.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/SCH/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/SCH/.ssh/id_rsa.
Your public key has been saved in /c/Users/SCH/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:cVm6MKXs4J7dEOpz+sknSXZqFlx9D15hE0Pf2BDUpCM zzsunss@163.com
The key's randomart image is:
+---[RSA 2048]----+
| . ..=Bo|
| . o + O=|
| . B +.E = *|
| . + *....o..|
| o.S.. o + |
| o o=o. . .|
| =oo=. |
| =*.. |
| .++o |
+----[SHA256]-----+
SCH@DESKTOP-CNT60BT MINGW64 ~/Desktop
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDSBgPVUGD3vRfZm8nGIJb5RM31P/y4+4OPeBL16cP1 vcmCDcpTLuMCSNMFGfHLKyoS4XISzfA7pSjCKlNfdZg/ct8XtFg4BkOi8mzP7q0xLgISp1tEn90lryHA Wty87E+P1ywDcyTXnEZp4z+JQk51Glf8VfqvSuyQIHubvwM/VrudzcH+SOS/XHTstHt2vIY7YTzXa4yQ 9Di47f6hzD9egMAMk6irXkGPhtXqkl9pVWmfMO4r281yA2gAaH7dHdq7YUu3qlGGKzC5NMNzK1mNrXWt hUs5NgngOtSCeddLdfrm16V9DRdrXRVgTUvn0pnUn9xUyBePd+5D+ar6am9n zzsunss@163.com
SCH@DESKTOP-CNT60BT MINGW64 ~/Desktop
$ ssh -T git@gitee.com
The authenticity of host 'gitee.com (180.97.125.228)' can't be established.
ECDSA key fingerprint is SHA256:FQGC9Kn/eye1W8icdBgrQp+KkGYoFgbVr17bmjey0Wc.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'gitee.com,180.97.125.228' (ECDSA) to the list of knownhosts.
Hi 孙长宏! You've successfully authenticated, but GITEE.COM does not provide shell access.
将上图生成的SSH公钥粘贴到下图中
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mbk2dFlq-1614657372493)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210118214042743.png)]
###7.从码云初始化一个项目
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vh430mxz-1614657372494)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210221181821779.png)]
项目地址:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-neB4uRpc-1614657372495)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210221181857274.png)]
###8.在IDEA中创建一个springboot项目
####8.1通过总项目聚合子项目
随便复制一个pom.xml复制到总项目中,修改成下面样子。
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.atguigu.gulimall</groupId>
<artifactId>gulimall</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>gulimall</name>
<description>聚合服务</description>
<packaging>pom</packaging>
<!--聚合子项目-->
<modules>
<module>gulimall-coupon</module>
<module>gulimall-member</module>
<module>gulimall-order</module>
<module>gulimall-product</module>
<module>gulimall-ware</module>
</modules>
</project>
添加主项目的pom.xml。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TjOsk9m4-1614657372496)(C:\Users\SCH\AppData\Roaming\Typora\typora-user-images\image-20210119141844560.png)]
####8.2修改总项目的**.gitignore**模板
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
目的是为提交代码到码云的时候过滤一些不必要的文件
###9.人人开源快速工程
####9.1通用依赖模块
pom.xml(root)中添加通用依赖
<modules>
<module>gulimall-coupon</module>
<module>gulimall-member</module>
<module>gulimall-order</module>
<module>gulimall-product</module>
<module>gulimall-ware</module>
<module>renren-fast</module>
<module>renren-generator</module>
<module>gulimall-common</module>
</modules>
在想引入通用依赖的模块中添加
<dependency>
<groupId>com.atguigu.gulimall</groupId>
<artifactId>gulimall-common</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
####9.2人人开源逆向工程(renren-generator)
generator.properties配置文件的更改
mainPath=com.atguigu
package=com.atguigu.gulimall
moduleName=product
author=SCH
email=zzsunss@163.com
tablePrefix=pms_
9.3通过商品模块整合mybatis-plus
9.3.1导入依赖
9.3.2配置
l
gulimall-common
0.0.1-SNAPSHOT
####9.2人人开源逆向工程(renren-generator)
**generator.properties**配置文件的更改
```xml
mainPath=com.atguigu
package=com.atguigu.gulimall
moduleName=product
author=SCH
email=zzsunss@163.com
tablePrefix=pms_
9.3通过商品模块整合mybatis-plus
9.3.1导入依赖
9.3.2配置