在VMware虚拟机中部署docker环境,并安装数据库
软件汇总
docker命令
在阿里云下载centos镜像
在VMware中新建虚拟机
填写虚拟机的名称和安装路径
配置完成之后启动虚拟机
设置时区为东八区
选择默认直接done
设置root密码以及普通账户
配置阿里云
在url中填写如下字段
mirrors.aliyun.com/centos/8/BaseOS/x86_64/os
配置完成之后,单机开始安装
什么是docker?
https://www.runoob.com/docker/docker-tutorial.html
关闭防火墙
使用systemctl status firewalld 查看当前防火墙状态
可以看到当前防火墙的状态默认是开启的,先关闭防火墙
systemctl stop firewalld关闭防火墙
systemctl disable firewalld关闭自启动
systemctl mask firewalld屏蔽防火墙服务
(systemctl start firewalld 开启防火墙)
ctrl+L清屏
下一步,查看当前的ip地址
ip a 查看当前ip地址
em33代表我们的ip,inet后面就是我们的地址了
接下来我们要使用第二个软件MobaXterm
打开MobaXterm
依次点击session—>SSH,在Remote host中输入我们的ip地址喝用户名,这里使用root有较高的权限,最后点击ok
进入页面以后需要输入密码,我们输入密码以后点击yes
我们要在这里继续关闭防火墙
cd /etc/selinux/
ls 列出文件列表
安装vim
yum search vim
yum install -y vim-enhanced
这里鼠标选中红框中的vim-enhanced单击右键可以直接复制到当前命令中
安装完成之后我们使用vim命令修改config文件
vim config
:set nu 显示行号
可以看到文件中有两行白色的未被注释的语句
我们要将SELINUX的状态改为disabled,再将SELINUXTYPE=targeted注释掉
修改后如下:
按住esc退出插入状态
:wq 写入退出
W:write,写入
Q:quit,退出
再回车,就保存退出了
其实,保存退出还有二个方法:
A:在最后输入命令时,直接输入"x",也是一样的,即X=WQ。
B:最快捷的方法:按了ESC后,直接按shift+zz,或者切换到大写模式按ZZ,就可以保存退出了,即是按2下大写的Z
setenforce 0
setenforce是Linux的selinux防火墙配置命令, 执行setenforce 0 表示关闭selinux防火墙。
setenforce命令是单词set(设置)和enforce(执行)连写,另一个命令getenforce可查看selinux的状态。
enforce:加强,这里指的是security enforce安全加强,也就是SELinux,setenforce 0就是表示关闭SELinux
当我们不知道某个命令的具体作用时,可以使用man命令查找说明
man setenforce
这里有详细的说明,按q退出
到此,我们的防火墙已经彻底关闭了
docker环境部署
https://note.youdao.com/ynoteshare1/index.html?id=f012d593a832f72ab35325a82f0db82b&type=note
这是王胜老师的命令笔记
首先要对系统做更新
安装epel
EPEL源-是什么?为什么安装?
EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux.
为了更新仓库
一、概览
1、什么是repo文件
repo文件是Fedora中yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用
2、Yum的工作原理
YUM的工作原理并不复杂,每一个 RPM软件的头(header)里面都会纪录该软件的依赖关系,那么如果可以将该头的内容纪录下来并且进行分析,可以知道每个软件在安装之前需要额外安装 哪些基础软件。也就是说,在服务器上面先以分析工具将所有的RPM档案进行分析,然后将该分析纪录下来,只要在进行安装或升级时先查询该纪录的文件,就可 以知道所有相关联的软件。
————————————————
版权声明:本文为CSDN博主「heavyfish」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/heavyfish/article/details/82808970
yum search epel 查看epel可用的包
yum install epel-release -y 安装epel
接下来系统更新
yum update -y && yum upgrade -y
安装插件
yum install yum-utils device-mapper-persistent-data lvm2 -y
安装docker镜像,配置阿里云
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
或者
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
错误:
Error:
Problem: package docker-ce-3:20.10.2-3.el7.x86_64 requires containerd.io >= 1.4.1, but none of the providers can be installed
- cannot install the best candidate for the job
解决方法:
https://download.docker.com/linux/fedora/33/x86_64/stable/Packages/
安装docker
yum install docker-ce -y
查看当前docker版本:
docker -v
创建国内下载镜像
切换目录
cd /etc/
创建目录
mkdir -pv docker
cd docker
mkdir -p 可以在新的子目录中创建一个新的子目录。举例:
mkdir -p about/abc/def 可以递级创建新的三个目录。
如果想看看mkdir到底做了什么,可以添加选项“-v”
创建json文件
vim daemon.json
将以下内容复制进json文件中
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://registry.docker-cn.com"]
}
按I切换编辑状态,输入:wq退出
或者在创建完文件之后,直接执行命令
[root@china etc]# mkdir -pv docker
mkdir: created directory 'docker'
[root@china etc]# cd docker/
[root@china docker]# vim daemon.json
[root@china docker]# cat>>daemon.json<<EOF
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://registry.docker-cn.com"]
}
EOF
docker 信息查看
docker info
红框表示docker未启动
启动docker
systemctl start docker
开机自启动
systemctl enable docker
再次使用docker info查看
查看运行状态
systemctl status docker
查看docker中的容器
docker images
在docker容器中部署mysql
查看mysql
docker search mysql
拉取数据库
docker pull centos/mysql-57-centos7
启动数据库
docker run -di --restart=always centos/mysql-57-centos7
//d:后台 i:交互 restart=always:启动方式:总是启动
//docker run :创建一个新的容器并运行一个命令
查看数据库运行状态
docker ps -a
//-a :显示所有的容器,包括未运行的。
设置数据库端口号和密码
docker run -di --name=china_mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=1 centos/mysql-57-centos7
//:前的是对外的端口号,:后的是对内的端口号
再次查看数据库,可以发现有两个数据库,最上面的就是我们上一条命令创建的数据库
打开Navichat,新建一个mysql的连接,连接名随意,主机号选择虚拟机中的网络端口,也就是MobaXterm命令行窗口上方的地址号,密码是我们刚刚设置的密码,点击测试连接
提示连接成功
如果想要在docker中创建多个数据库,只需要将name的值更改,并将对外的端口号修改(一般是+1)就可以了
在docker中部署redis
redis简介
https://www.w3cschool.cn/redis/redis-intro.html
查看redis
docker search redis
在docker中部署redis 服务
docker pull redis
查看容器中的内容
启动并设置redis的名称、对外和对内的端口号
docker run -di --name=china_redis01 -p6379:6379 redis
查看后台
可以看到redis已经在后台运行了