谷粒商城 - 1 基础环境搭建 docker redis mysql nginx

boot+cloud版本:

<spring-boot.version>2.1.8.RELEASE</spring-boot.version>
<spring-cloud.version>Greenwich.SR3</spring-cloud.version>

boot+cloud版本选择依据:https://start.spring.io/actuator/info

cloud+cloudAlibaba版本选择依据:版本说明 · alibaba/spring-cloud-alibaba Wiki · GitHub

进度:  Day1  P16

  1. Linux基础环境搭建完成(vagrant visualBox docker redis mysql git)
  2. 构建项目结构
  3. 导入Sql脚本

具体步骤

    1.下载vagrant 完成安装 
    2.执行vagrant init centos/7  (初始化Centos7)
    3.修改配置文件(ip地址)
    4.启动Linux vagrant up 、vagrant restart 、vagrant ssh (Account: vagrant/vagrant   /root/vagrant)
   


docker部分 

卸载原有docker

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

安装docker基础环境并配置docker下载地址

sudo yum install -y yum-utils

sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装docker

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

配置docker 镜像源 (aliyun)  阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://3qz0mhqw.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

设置docker开机自启动

systemctl enable docker

启动docker (systemctl start docker)


下载docker mysql镜像

docker pull mysql:5.7

1.启动映射:(这调命令是错误的 会导致mysql创建连接变得超级慢) 5.7
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 mysql5.7
---------------------------------------------------------------------------------------
[5.7命令修正]

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/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7
---------------------------------------------------------------------------------------
[8.0]
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/my.cnf:/etc/mysql/my.cnf -v /mydata/mysql/mysql-files:/var/lib/mysql-files -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0

#默认不允许外部连接
update user set host='%' where user='root';
#刷新权限
FLUSH PRIVILEGES;
#修改密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '新的密码';
ALTER USER 'root'@'localhost' IDENTIFIED BY '新的密码' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新的密码';

---------------------------------------------------------------------------------------
2.配置
vim /mydata/mysql/conf/my.cnf

3.添加内容
[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-name-resolve

下载docker redis镜像

1.创建配置文件目录
mkdir -p  /mydata/redis/conf

2.创建配置文件
touch /mydata/redis/conf/redis.conf

3.允许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

4.设置持久化和密码 	[ -e开启转义字符模式 \n 换行 ]
echo  -e  'appendonly yes  \nrequirepass pass' >> /mydata/redis/conf/redis.conf

5.重启 

设置docker mysql redis 的自启动

docker update mysql--restart=always
docker update redis --restart=always

docker 执行容器命令

docker exec -it mysql mysql -u root -p
docker exec -it redis redis-cli

docker 进入容器内部

docker exec -it mysql /bin/bash
docker exec -it redis /bin/bash

安装nginx

### 安装Nginx

* 随便启动一个nginx实例,只是为了复制出配置

  docker run -p80:80 --name nginx -d nginx:1.10   


* 将容器内的配置文件拷贝到/mydata/nginx/conf/ 下


  mkdir -p /mydata/nginx/html
  mkdir -p /mydata/nginx/logs
  mkdir -p /mydata/nginx/conf
  docker container cp nginx:/etc/nginx/  /mydata/nginx/conf/ 

  #由于拷贝完成后会在config中存在一个nginx文件夹,所以需要将它的内容移动到conf中

  mv /mydata/nginx/conf/nginx/* /mydata/nginx/conf/
  rm -rf /mydata/nginx/conf/nginx


* 终止原容器:


  docker stop nginx


* 执行命令删除原容器:


  docker rm nginx


* 创建新的Nginx,执行以下命令


  docker run -p 80:80 --name nginx \
   -v /mydata/nginx/html:/usr/share/nginx/html \
   -v /mydata/nginx/logs:/var/log/nginx \
   -v /mydata/nginx/conf/:/etc/nginx \
   -d nginx:1.10


* 设置开机启动nginx


  docker update nginx --restart=always


  

* 创建“/mydata/nginx/html/index.html”文件,测试是否能够正常访问


  echo '<h2>hello nginx!</h2>' >index.html


  访问:http://nginx所在主机的IP:80/index.html

创建项目结构(共同引入web 、 openFeign模块  上传remoXXte Dev分支)

创建数据库并导入SQL脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值