1. 安装ContOS7操作系统
2. 安装docker
参考博客:https://www.icode9.com/content-3-660803.html
docker文档:https://docs.docker.com/get-docker/
卸载旧版本
$ sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
安装
yum-utils软件包$ sudo yum install -y yum-utils \device-mapper-persistent-data \lvm2
设置稳定的仓库
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装最新版本的 Docker Engine-Community 和 containerd
$ sudo yum install docker-ce docker-ce-cli containerd.io
启动及查看版本 ```shell $ sudo systemctl start docker
$ docker version
6. 设置开机启动```shell$ sudo systemctl enable docker
3.给docker设置阿里云镜像加速
https://cr.console.aliyun.com/cn-qingdao/instances/mirrors
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<-'EOF'{"registry-mirrors": ["https://l6ka2w45.mirror.aliyuncs.com"]}EOFsudo systemctl daemon-reloadsudo systemctl restart docker
4.使用docker安装mysql并启动及有关配置
1、下载
docker pull mysql:5.7
2、启动
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 将mysql容器内文件挂载到外部Linux系统中
-e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码为root
-d: 后台运行容器,并返回容器ID
3、修改mysql字符编码
vi /mydata/mysql/conf/my.conf
进入到相关配置文件填写以下内容
[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=utf8collation-server=utf8_unicode_ciskip-character-set-client-handshakeskip-name-resolve
#查看docker已经启动的程序[root@shc mysql]# docker psCO#NTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESb166cdf71ece mysql:5.7 "docker-entrypoint.s…" 9 minutes ago Up 9 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql#重新启动mysql[root@shc mysql]# docker restart mysqlmysql#进入mysql容器[root@shc mysql]# docker exec -it mysql /bin/bash#进入mysql目录root@b166cdf71ece:/# cd /etc/mysql/#查看目录下文件root@b166cdf71ece:/etc/mysql# lsmy.conf#抓取my.conf文件root@b166cdf71ece:/etc/mysql# cat my.conf#发现刚才改的文件已经修改好了[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=utf8collation-server=utf8_unicode_ciskip-character-set-client-handshakeskip-name-resolve#退出容器root@b166cdf71ece:/etc/mysql# exit;exit
修改mysql时区
#进入mysql容器[root@shc mysql]# docker exec -it mysql /bin/bash#进入数据库$ mysql -u root -p#查看时区SELECT TIMEDIFF(NOW(), UTC_TIMESTAMP);+--------------------------------+| TIMEDIFF(NOW(), UTC_TIMESTAMP) |+--------------------------------+| 00:00:00 |+--------------------------------+#如果是中国标准时间, 会输出 08:00:00。#查看 MySQL 当前时间、当前时区:select curtime();show variables like "%time_zone%";#修改时区:set global time_zone = '+8:00'; # 修改MySQL全局时区为北京时间,即我们所在的东8区set time_zone = '+8:00'; # 修改当前会话时区
每次启动docker自动启动mysql
docker update mysql --restart=always
5.安装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
///
# 如果直接挂载的话docker会以为挂载的是一个目录,所以我们先创建一个文件然后再挂载mkdir -p /mydata/redis/conftouch /mydata/redis/conf/redis.confdocker pull redisdocker 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客户端。docker exec -it redis redis-cli
默认是不持久化的。在配置文件中输入appendonly yes,就可以aof持久化了。修改完docker restart redis,docker -it redis redis-cli
vim /mydata/redis/conf/redis.conf# 插入下面内容appendonly yes保存docker restart redis
设置redis容器在docker启动的时候启动
docker update redis --restart=always
安装Redis客户端并连接服务器上的redis
每次启动docker自动启动redis
docker update redis --restart=always
6.环境-项目结构创建&提交到码云
项目搭建
在码云创建仓库,并使用仓库HTTPS在Idea中创建项目
Git
搭建微服务模块
商品服务、仓储服务、订单服务、优惠券服务、用户服务
共同:
- Spring框架
- 工具导入 : web、openfeign(该工具用于微服务与微服务之间相互调用)
- 包名统一 : com.atguigu.gulimall.xxx (product/order/ware/coupon/member)
- 模块名 : gulimall-xxx (product/order/ware/coupon/member)
添加配置
在主目录下添加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><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.4.3</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>com.atguigu.gulimall</groupId><artifactId>gulimall-ware</artifactId><version>0.0.1-SNAPSHOT</version><name>gulimall-ware</name><description>谷粒商城仓储服务</description><properties><java.version>1.8</java.version><spring-cloud.version>2020.0.1</spring-cloud.version></properties><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><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>
将此pom文件添加到Maven中
添加插件Git
在主目录下配置上传到码云的过虑文件
Ctrl+k 打开




