三--分布式基础之环境搭建

安装虚拟机Linux

  1. 下载VirtualBox,使用桥接模式,使虚拟机连上网。

  2. 下载Vagrant安装包,在官网下载。在cmd敲vagrant出现结果表明安装成功。
    在这里插入图片描述

  3. vagrant中有很多做好的镜像仓库,然后使用cmd命令行使用命令进行下载。
    vagrant镜像仓库地址:https://app.vagrantup.com/boxes/search
    初始化镜像:vagrant init centos/7 (进入某个文件夹,运行命令后出现Vagrantfile文件)
    运行镜像:vagrant up
    连接虚拟机:vagrant ssh (需要输入虚拟机用户名vagrant、root 和 密码 vagrant)
    退出:exit
    重启虚拟机:vagrant reload

  4. 虚拟机配置网络,将默认的NET(端口转发)改成 桥接模式(虚拟机相当于一个内网中一个真实的主机)
    在这里插入图片描述
    第一:打开Vagrantfile文件,将文件中config.vm.network “private_network”, ip: “169.254.219.111” 注释去掉。
    第二:将ip地址设置成与本机VirtualBox Host-Only Network #4网卡的ip地址在同一网段的ip地址。
    第三:重启虚拟机,vagrant reload
    第四:主机与虚拟机相互能够ping通

=======================================================
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

安装Docker

官方文档

  1. 卸载默认的docker

sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine

  1. 设置docker地址

sudo yum install -y yum-utils (设置地址所需要依赖的包)

sudo yum-config-manager
–add-repo
https://download.docker.com/linux/centos/docker-ce.repo

  1. 安装docker

sudo yum install docker-ce docker-ce-cli containerd.io

  1. 启动docker

sudo systemctl start docker

  1. 开机自启

sudo systemctl enable docker

  1. 查看docker版本

sudo docker -v

  1. docker命令的使用请查看博客
    https://blog.csdn.net/weixin_44142032/article/details/105332486

Docker镜像加速,将镜像地址换成阿里云

  1. 打开阿里云 ,支付宝登录
  2. 点击控制台—》产品与服务----》容器镜像服务—》镜像加速器—》centos
  3. 执行命令

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://0fyv0bab.mirror.aliyuncs.com”]
}
EOF
sudo systemctl daemon-reload (重启后台进程)
sudo systemctl restart docker (重启docker)

参考链接
https://blog.csdn.net/zhangbeizhen18/article/details/85239758
在这里插入图片描述

Docker安装Mysql

  1. 拉取镜像

docker pull mysql(镜像的名字)

  1. 根据镜像启动容器

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=root
-d mysql:5.7

-P 3306:3306:将容器的3306端口映射到主机的3306端口
-v /myaa/mysq/conf:/etc/mysql:将配置文件夹挂载到主机 (主机/myaa/mysq/conf )
-V /mydata/mysg/log:/ar/log/mysg!:将日志文件夹挂载到主机
-v /myaa/mysq/data:/var/ib/mysgl/:将配置文件夫挂载到主机
-e MYSQL ROOT PASSWORD=root:初始化root用户的密码

  1. 测试连接数据库是否成功,完成。
    在这里插入图片描述
    容器,是相互隔离的,一个容器相当于一个linux系统,可用命令进入容器的内部。
  2. docker exec -it 容器id/容器名称 /bin/bash
    在这里插入图片描述
  3. 开机自启

systemctl enable redis 不可以,因为安装是用的docker安装的
docker update mysql --restart=always

Mysql配置

  1. 创建文件my.cnf

vi /mydata/mysql/conf/my.cnf

  1. 文件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

  1. 重启容器

docker restart 容器id/容器名字

Docker安装Redis

  1. 拉取镜像

docker pull redis(镜像的名字,不加tag默认最新版本)

  1. 根据镜像启动容器
  1. 拉取镜像

docker pull mysql(镜像的名字)

  1. 根据镜像启动容器

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.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 (启动redis服务根据/etc/redis/redis.conf配置文件)

  1. 测试连接数据库是否成功,完成。
    Redis可视化工具 RedisDesktop Manager
    官网下载地址https://redisdesktop.com/download

github下载地址https://github.com/uglide/RedisDesktopManager/releases

百度网盘http://pan.baidu.com/s/1kU8sY3P

在这里插入图片描述

  1. 开机自启

systemctl enable redis 不可以,因为安装是用的docker安装的
docker update redis --restart=always

容器,是相互隔离的,一个容器相当于一个linux系统,可用命令进入容器的内部。
5. docker exec -it 容器id/容器名称 redis-cli
在这里插入图片描述

配置redis持久化

  1. redis将数据存在内存中,将其持久化

vi /mydata/redis/conf/redis.conf
添加以下内容
appendonly yes

  1. 重启redis

docker restart redis

安装注册配置中心nacos

docker  pull nacos/nacos-server:1.3.1

-v 某个容器的目录:映射centos上的某个目录(根据实际的设置别模仿我的)
-p 外部访问端口:内部被映射端口(根据实际的设置别模仿我的)
-e 环境变量设置
-d 后台运行
–name 容器的名称
–restart 重启策略

docker run -d -e prefer_host_mode=本机ip  -e MODE=standalone  
 -v  /mydata/nacos/logs:/home/nacos/logs  -p 8848:8848  --name nacos
--restart=always   nacos/nacos-server:1.3.1        #使用的时候合成一段即可 docekr启动镜像命令
docker  ps     	#查看已经启动的容器
docker logs --since  10m   nacos的容器id      #查看指定容器的输出日志

docker服务启动
访问地址http://ip地址:8848/nacos
初始用户名和密码为 nacos,nacos

开发环境统一

  1. jdk 1.8版本或以上
  2. maven 3.6.3或者3.6.1

在配置文件settings.xml中添加

<!--配置阿里云镜像-->
<mirror>
 <id>nexus-aliyun</id>
 <mirrorOf>central</mirrorOf>
 <name>Nexus aliyun</name>
 <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

<!--支持jdk1.8-->
<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>
  1. idea 和 vscode(前端ide)
    vscode安装插件
    在这里插入图片描述
    在这里插入图片描述

  2. 安装配置git
    在这里插入图片描述
    在这里插入图片描述

创建项目微服务

总项目:guloimall:com.atguigu.gulimall
子项目:gulimall-product等

创建步骤:

  1. 创建总项目
    在这里插入图片描述
    在这里插入图片描述
  2. 创建子项目
    使用快速创建springcloudt项目选项 ,将springweb和Feign 模块选中。

在这里插入图片描述
在这里插入图片描述

初始化数据库

powerDesigner是一个强大的数据库设计工具

每一个微服务对应一个数据库,用sql文件初始化数据库。

gitee人人开源,git clone 后台管理的前后端

前端

  1. 前端使用VUE,开发工具使用vscode。
    git clone git@gitee.com:renrenio/renren-fast-vue.git
  2. 配置前端环境
    下载node.js
    在这里插入图片描述

npm config set registry http://registry.npm.taobao.org/

  1. 初始化前端环境 进入vscode

npm install 安装所需要的依赖包
npm run dev 根据webpack-dev-server配置好的信息启动前端项目

后端

  1. 将 git clone 下来的项目中的 .git 文件删除,导入项目中
  2. 修改配置文件中的信息,将数据库用户名和密码改成自己的
  3. 导入相应的jdk
  4. 将代码生成器生成的代码main复制到自己的项目中(不是git clone下来的项目)
  5. 并根据报错信息将缺少的类从renren-fast项目中拷贝过来或者新建立一个公共模块maven项目,将公有的类放入这里面
  6. 运行

代码生成器 generator ,生成相应的配置信息,xml文件等

  1. 将项目导入
  2. 修改配置文件中数据库的用户名和密码,对应的那个数据库
  3. 修改配置文件generator.properties文件,表名生成的代码包名和项目名,以及表前缀
#代码生成器,配置信息

# 主要的目录
mainPath=com.atguigu
#包名
package=com.atguigu.gulimall
#模块名,共同组合成包名
moduleName=product
#作者
author=hzm
#Email
email=hzmxiansheng@123.com
#表前缀(类名不会包含表前缀)
tablePrefix=pms_

#类型转换,配置信息
tinyint=Integer
smallint=Integer
mediumint=Integer
int=Integer
integer=Integer
bigint=Long
float=Float
double=Double
decimal=BigDecimal
bit=Boolean

char=String
varchar=String
tinytext=String
text=String
mediumtext=String
longtext=String


date=Date
datetime=Date
timestamp=Date

NUMBER=Integer
INT=Integer
INTEGER=Integer
BINARY_INTEGER=Integer
LONG=String
FLOAT=Float
BINARY_FLOAT=Float
DOUBLE=Double
BINARY_DOUBLE=Double
DECIMAL=BigDecimal
CHAR=String
VARCHAR=String
VARCHAR2=String
NVARCHAR=String
NVARCHAR2=String
CLOB=String
BLOB=String
DATE=Date
DATETIME=Date
TIMESTAMP=Date
TIMESTAMP(6)=Date

int8=Long
int4=Integer
int2=Integer
numeric=BigDecimal

nvarchar=String
  1. 运行项目,根据web页面选择对应的表要生成的controller层,service层,dao层,common和xml文件的相关代码
    在这里插入图片描述
  2. 修改生成各个层的代码的规则结构,修改对应的vm文件就可以
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值