Linux虚拟机环境安装

本文详细介绍了如何通过VirtualBox和Vagrant在CentOS环境中搭建虚拟机,解决网络连接问题,并配置Docker环境,包括安装、镜像管理以及MySQL和Redis数据库的安装和配置,以及解决XFTP上传文件失败的问题。
摘要由CSDN通过智能技术生成

项目环境准备

1.虚拟机环境

我们可以通过VMWare来安装,但是通过VMWare安装大家经常会碰到网络ip连接问题,为了减少额外的环境因素影响,Docker内容的讲解我们会通过VirtualBox结合Vagrant来安装虚拟机。

VirtualBox官网:https://www.virtualbox.org/

Vagrant官网:https://www.vagrantup.com/

Vagrant镜像仓库:https://app.vagrantup.com/boxes/search

安装VirtualBox和Vagrant,傻瓜式安装。安装完成后需要重启计算机。

在cmd命令窗口输入 vagrant 命令弹出如下内容表示 vagrant 安装成功

image.png

通过Vagrant安装虚拟机:

  • 创建一个空的目录,cmd切换到该目录中,然后执行 vagrant init centos/7 会创建Vagrantfile文件
  • 执行 vagrant up 第一次执行的时候会远程下相关的镜像文件,并启动虚拟机。
  • 连接虚拟机通过 vagrant ssh 连接

image.png

网络配置

找到对应的Vagrantfile文件

image.png

修改完之后关闭virtualbox,用命令行 vagrant up 启动虚拟机

查看当前主机给虚拟机分配的网关的网段:

image.png

所以修改后的ip为:192.168.56.10

重启测试:需要提供私钥

image.png

私钥地址:

image.png

搞定

2.Docker环境

image.png

参考官方文档安装:https://docs.docker.com/engine/install/centos/

卸载原有的环境:

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

安装对应的依赖环境和镜像地址

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

直接安装docker CE

sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

image.png

image.png

表示安装成功

启动docker服务

sudo systemctl start docker

查看docker的版本

sudo docker version

image.png

补充:通过官方的镜像地址下载docker会比较慢,

配置阿里云的镜像地址:

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

yum更新下即可:

yum makecache fast

开机启动docker

sudo systemctl enable docker

3.基本软件安装

3.1 MySQL数据库安装

项目软件统一安装在 /mydata 目录下

docker拉取镜像命令

docker pull mysql:5.7

docker安装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

docker run: 通过mysql:5.7这个镜像来启动容器
-p 3306:3306 第一个3306是centos中的3306 第二个3306是mysql镜像中的3306,它们之间做了一层映射关系
--privileged=true
--name mysql 给我们的容器取了一个名字叫mysql
-v /mydata/mysql/log:/var/log/mysql  将mysql目录下的/var/log/mysql 挂载到centos目录/mydata/mysql/log 下
-v /mydata/mysql/data:/var/lib/mysql  对应的数据挂载到centos的data目录/mydata/mysql/data
-v /mydata/mysql/conf:/etc/mysql  配置文件挂载在centos的/mydata/mysql/conf目录下
-e MYSQL_ROOT_PASSWORD -e 代表属性文件MYSQL_ROOT_PASSWORD 设置了root账号的默认密码就是root账号

安装vim工具命令 yum install -y vim

在/mydata/mysql/conf/下创建一个文件my.cnf

执行命令:vim my.cnf

修改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

保存wq,然后退出重启一下mysql

docker restart pid

删除容器 docker rm id

排查错误 docker logs id

3.2 Redis安装

拉取Redis最新版本镜像

docker pull redis

先创建对应的Redis的映射配置文件

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

设置redis.conf

若需要远程连接访问redis:
1.注释掉本地的绑定 bind 127.0.0.1
2.关闭保护模式。protected-mode 修改为no

创建容器命令

docker run -d -p 6379:6379 --name mall-redis -v /mydata/redis/data:/data -v /mydata/redis/conf:/etc/redis  redis redis-server /etc/redis/redis.conf

启动后测试连接:

[root@manager-node conf]# docker exec -it 4e redis-cli
127.0.0.1:6379> keys *
(empty array)
127.0.0.1:6379> 

设置容器自启动

[root@localhost ~]# docker update --restart=always mysql
mysql
[root@localhost ~]# docker update --restart=always mall-redis
mall-redis

xftp 上传文件失败

例如要上传的文件夹目录chmod 777 /mydata/redis/conf

设置容器自启动

[root@localhost ~]# docker update --restart=always mysql
mysql
[root@localhost ~]# docker update --restart=always mall-redis
mall-redis

xftp 上传文件失败

例如要上传的文件夹目录chmod 777 /mydata/redis/conf
  • 30
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值