IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> mall-1-搭建环境 -> 正文阅读

[系统运维]mall-1-搭建环境

half of month

项目环境搭建

1.virtual Box (开源、免费、体积小)

  1. 首先,进入自己电脑的BIOS主板,开启CPU虚拟化技术。每个人的主板不一样,我的是MSI B660M,默认已经开启CPU虚拟化技术。
  2. 从官网下载安装包,然后一步步安装即可。

2.Vagrant(虚拟机管理工具)

  1. 从官网下载vagrant对应操作系统的工具包
  2. vagrant官方镜像 找到对应的镜像名称。例如:centos/7
  3. windows下新建文件夹mall,然后在cmd窗口打开,执行vagrant 初始化linux系统。初始化后的文件夹中会存在Vagrantfile文件。以下命令均在mall文件夹下执行
    1.初始化centos系统
    vagrant init centos/7
    
    2.centos系统开机
    vagrant up
    
    3.使用vagrant自动连接进入centos系统,root的密码默认为vagrant
    vagrant ssh
    
    4.新建的centos系统的默认使用的是网络地址转换和端口转发的方式,对开发不方便。所以给虚拟机设置一个固定的IP地址用来后续的开发。
    
    5.编辑Vagrantfile文件。其中的ip地址为virtual同一网段下的ip地址即可。
    	config.vm.network "private_network", ip: "192.168.56.10"
    	
    6.以上的ip地址修改完毕后,可以测试一下,本地系统和虚拟系统之间是否能ping通
    
    网络地址转换(NAT):虚拟主机需要借助虚拟NAT设备和虚拟DHCP服务器,使得虚拟机可以联网,并且与物理机共用一个IP地址。
    
    端口转发:windows系统这一个主机的端口号和虚拟主机的端口号存在对应关系
    
  4. 我本地的ip地址为192.168.56.1,所以上面给centos系统设置的ip地址为192.168.56.10(随便设置的)。
    在这里插入图片描述

3.linux虚拟机安装docker

docker,一种虚拟化技术,可以快速启动各种容器,一次编译,到处运行

docker hub 镜像仓库:官方存储各种软件镜像的仓库

使用步骤(参考centos安装docker

1.使用root用户卸载过去安装的docker
 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
                  
2.安装docker依赖包并设置本地存储库(按照官方给的地址,设置的是国外的存储库,下载比较慢,后续会设置为阿里的镜像加速器)

 sudo yum install -y yum-utils
 sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
    
3.安装docker引擎(社区版)、docker社区版引擎对应的命令行、docker守护进程、规定多个docker容器的启动顺序
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

4.启动docker
 sudo systemctl start docker
 
5.验证docker是否可用(会下载一个测试的hello world镜像并运行)
sudo docker run hello-world

6.设置docker的开机自启动
 sudo systemctl enable docker
 
7.配置阿里云的镜像加速服务,登录阿里云的账号,找到镜像加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://75itdq1t.mirror.aliyuncs.com"]
}
EOF
#重新加载某个服务的配置文件
sudo systemctl daemon-reload
sudo systemctl restart docker

在这里插入图片描述

4.docker安装mysql镜像

  1. docker hub找到对应的mysql版本。例如:5.7
    在这里插入图片描述
  2. 执行docker pull mysql:5.7拉取镜像
docker pull mysql:5.7
  1. 创建mysql实例并启动
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映射到docker容器的3306
-v:文件挂载,操作主机下的/mydata/mysql/conf文件夹等同于操作docker中内置的/etc/mysql文件夹
-e:初始化root用户的密码为root
-d:后台运行
mysql:5.7:指定创建该实例所用的镜像名称
  1. 修改MySQL的配置文件
# 加入以下内容
vim /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 restart mysql

5.docker安装redis镜像

  1. 拉取redis镜像
docker pull redis
  1. 创建redis实例
#创建redis.conf文件,避免文件挂载的时候将其视为一个目录
mkdir -p /mydata/redis/conf 
touch /mydata/redis/conf/redis.conf

#创建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 exec -it redis redis-cli

#由于redis默认没有开启持久化,编辑/mydata/redis/conf/redis.conf,加入appendonly yes即可,然后重启redis
vim /mydata/redis/redis.conf

appendonly yes

#重启redis
docker restart redis

#设置docker启动的时候也启动redis
docker update redis --restart=always
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-09-21 01:04:54  更:2022-09-21 01:07:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 19:35:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计