admin管理员组

文章数量:1794759

Centos 通过 docker 安装MySQL5.7

Centos 通过 docker 安装MySQL5.7

1. 安装 VMware 以及 CentOS

由于本博主之前写过,在这给出链接,不再赘述了

2. 安装 docker

  • Docker 分为 CE 和 EE 两大版本
  • CE 即社区版,免费,支持周期7个月
  • EE 即企业版,强调安全,付费使用,支持周期24个月
  • Docket CE 分为 stable test 和 nightly 三个更新频道
  • 官方网站上有各种环境下的安装指南,这里主要介绍 Docker CE 在 CentOS 上的安装

2.1 卸载(可选)

如果之前安装过旧版的 docker,可以使用以下命令卸载:

代码语言:javascript代码运行次数:0运行复制
yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine \
                  docker-ce

2.2 安装 Docker

首先大家需要给虚拟机联网,安装 yum 工具

代码语言:javascript代码运行次数:0运行复制
yum install -y yum-utils \
           device-mapper-persistent-data \
           lvm2 --skip-broken

然后更新本地镜像源:

代码语言:javascript代码运行次数:0运行复制
# 设置docker镜像源
yum-config-manager \
    --add-repo \
    .repo
    
sed -i 's/download.docker/mirrors.aliyun\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast

然后输入命令:

代码语言:javascript代码运行次数:0运行复制
yum install -y docker-ce

docker-ce为社区免费版本。稍等片刻,docker即可安装成功。

2.3 启动 Docker

Docker 应用需要用到各种端口,逐一去修改防火墙设置,非常麻烦,因此建议大家直接关闭防火墙 启动 Docker 前,一定要关闭防火墙!!!

代码语言:javascript代码运行次数:0运行复制
systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld

通过命令启动 docker

代码语言:javascript代码运行次数:0运行复制
systemctl start docker
systemctl status docker

当出现 active(running)时,即为启动成功

可以查看 docker 版本

代码语言:javascript代码运行次数:0运行复制
docker -v

2.4.配置镜像加速

docker官方镜像仓库网速较差,我们需要设置国内镜像服务:

参考阿里云的镜像加速文档:

代码语言:javascript代码运行次数:0运行复制
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://*****.mirror.aliyuncs"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2.5 设置 Docker 开机自启

代码语言:javascript代码运行次数:0运行复制
systemctl enable docker

至此,docker 已经安装好了

3. 安装 MySQL

3.1 从docker镜像仓库中拉取mysql镜像

代码语言:javascript代码运行次数:0运行复制
docker pull mysql:5.7

3.2 创建实例,并启动

代码语言:javascript代码运行次数:0运行复制
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/ib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7

虚拟机(主机)中3306端口与docker容器中的3306端口(mysql)相对应

–name :为我们当前启动的容器命名

-p 3306:3306:将容器的3306端口映射到主机的3306端口

-v/mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机,目录挂载,将容器内部的文件 挂载到 虚拟机目录中

-v /mydata/mysg/log:/ar/log/mysql:将日志文件夹挂载到主机

-v /mydata/myq/data/var/lib/mysql/:将配置文件夹挂载到主机

-e MYSQL ROOT PASSWORD=123456: 初始化root用户的密码

-d:后台启动mysql的镜像

3.3.查看docker中正在运行的容器

代码语言:javascript代码运行次数:0运行复制
docker ps

3.4.进入容器内部操作数据库

代码语言:javascript代码运行次数:0运行复制
docker exec -it mysql mysql -uroot -p123456

3.5 改为自启动

代码语言:javascript代码运行次数:0运行复制
docker container update --restart=always mysql
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2023-04-29,如有侵权请联系 cloudcommunity@tencent 删除容器镜像配置主机centos

本文标签: Centos 通过 docker 安装MySQL57