前言
谷粒商城专栏:https://blog.csdn.net/qq_45714272/category_11939728.html
Github地址:https://github.com/YuyanCai/mall-study
Vagrant部署Centos
Vagrant官网下载即可
这里采用中科大的镜像站进行下载
地址如下:
Index of /centos-cloud/centos/7/vagrant/x86_64/images/ (ustc.edu.cn)
vagrant init centos7 https://mirrors.ustc.edu.cn/centos-cloud/centos/7/vagrant/x86_64/images/CentOS-7.box
启动虚拟机
启动完之后就可以关掉CMD窗口了,我们用xshell连接即可
vagrant up
虚拟机的配置
网络
网卡为桥接,这样我们就不用配置端口转发了
配置完网络重启网络并进行测试
登录
vi /etc/ssh/sshd_config 修改 PasswordAuthentication yes
重启服务
yum源配置
-o
参数将服务器的回应保存成文件,等同于wget
命令。
$ curl -o example.html https://www.example.com
上面命令将www.example.com
保存成example.html
。
-O
参数将服务器回应保存成文件,并将 URL 的最后部分当作文件名。
curl -O https://www.example.com/foo/bar.html
上面命令将服务器回应保存成文件,文件名为bar.html
。
使用新 yum 源
阿里云的这个是最快的,网易有点卡
使用这种方式的前提是网络模式为桥接模式,能直接上网,具体按照前面的进行配置
wget -O /etc/yum.repos.d/local.repo http://mirrors.aliyun.com/repo/Centos-7.repo 或者curl下载 curl -o /etc/yum.repos.d/local.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum clean all && yum makecache yum install -y epel-release yum clean all && yum makecache
Docker环境
yum安装docker
第一步 yum install -y yum-utils \ device-mapper-persistent-data \ lvm2 第二步使用阿里云镜像 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo && yum makecache fast 第三步安装 yum install docker-ce docker-ce-cli containerd.io systemctl start docker systemctl enable docker docker run hello-world
配置加速器
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://3w352wd.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
安装Mysql
安装Mysql docker run -p 3306:3306 --nam
- -p 3306:3306:将容器的3306端口映射到主机的3306端口
- -v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂在到主机
- -v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
- -v /mydata/mysql/data:/var/lib/mysql/:将数据文件夹挂载到主机
- -e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码
MySQL 配置
vi /mydata/mysql/conf/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 #跳过域名解析 docker exec -it mysql mysql -uroot -proot grant all privileges on *.* to 'root'@'%' identified by 'root' with grant option; flush privileges; 退出,设置开启自动启动 docker update mysql(服务名) --restart=always
Mysql本地连接失败
- pc和vm能互相ping通
- 关闭firewalld,或放开端口
- 打开ipv4转发
- vi /etc/sysctl.conf net.ipv4.ip_forward=1 #添加此行配置
- systemctl restart network && systemctl restart docker
- sysctl net.ipv4.ip_forward
- 如果返回为“net.ipv4.ip_forward = 1”则表示修改成功
安装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
Git配置
配置 Git
通过配置git,能让我们提交代码的时候显示我们的在这里设置的名字
# 配置用户名 git config --global user.name "username" //(名字) # 配置邮箱 git config --global user.email "username@email.com" //(注册账号时用的邮箱)
配置 Ssh 免密登录
这里-C指定的为邮箱地址
ssh-keygen -t rsa -C "mildcaq@163.com"
查看公钥
cat ~/.ssh/id_rsa.pub
测试
用 ssh -T git@gitee.com 测试登录 成功会出现如下: Hi 彭于晏! You've successfully authenticated, but GITEE.COM does not provide shell access.
Gitee配置
gitee为代码托管平台,在这里代码可以更灵活的合作开发、代码回滚等等
从Gitee导入代码到IDEA
建立项目基本架构
提交代码到gitee
初始化数据库
这里数据库我们采用docker中部署的mysql
设置每次重启后自动启动
[root@queen ~]# docker update redis --restart=always redis [root@queen ~]# docker update mysql --restart=always mysql
重启虚拟机看是否重新启动
[root@queen ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d82881d71fba redis "docker-entrypoint.s…" 5 hours ago Up About a minute 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp redis f8bb0bf0b68a mysql:5.7 "docker-entrypoint.s…" 5 hours ago Up About a minute 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysql