Docker搭建mysql性能测试环境

OpenEuler使用Docker搭建mysql性能测试环境

一、安装Docker

  1. 建立源文件

    bash 复制代码
    vim  /etc/yum.repos.d/docker-ce.repo

    增加内容

    bash 复制代码
    [docker-ce-stable]
    name=Docker CE Stable - $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/$basearch/stable
    enabled=1
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
    
    [docker-ce-stable-debuginfo]
    name=Docker CE Stable - Debuginfo $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/debug-$basearch/stable
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
     
    [docker-ce-stable-source]
    name=Docker CE Stable - Sources
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/source/stable
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
     
    [docker-ce-test]
    name=Docker CE Test - $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/$basearch/test
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
     
    [docker-ce-test-debuginfo]
    name=Docker CE Test - Debuginfo $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/debug-$basearch/test
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
     
    [docker-ce-test-source]
    name=Docker CE Test - Sources
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/source/test
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
     
    [docker-ce-nightly]
    name=Docker CE Nightly - $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/$basearch/nightly
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
     
    [docker-ce-nightly-debuginfo]
    name=Docker CE Nightly - Debuginfo $basearch
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/debug-$basearch/nightly
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg
     
    [docker-ce-nightly-source]
    name=Docker CE Nightly - Sources
    baseurl=https://repo.huaweicloud.com/docker-ce/linux/centos/8/source/nightly
    enabled=0
    gpgcheck=1
    gpgkey=https://repo.huaweicloud.com/docker-ce/linux/centos/gpg	 
  2. 安装Docker

  • 安装docker(docker-ce 社区版 而ee是企业版)

    bash 复制代码
    yum install -y docker-ce docker-ce-cli containerd.io
  • 配置国内的镜像源

    bash 复制代码
    vim /etc/docker/daemon.json
  • 进行编辑(json格式)

    bash 复制代码
    {
     "registry-mirrors": ["http://hub-mirror.c.163.com","https://registry.docker-cn.com","https://docker.mirrors.ustc.edu.cn"]
    }
  • 启动,并设置为开机自启(因为你加了日志生成路径,可能会出错,不要慌!!可以查看后面解决方法)

    (1) 刷新daemon.json文件

    bash 复制代码
    systemctl daemon-reload

    (2) 启动Docker服务

    bash 复制代码
    systemctl enable --now docker
    systemctl start docker		
  • 重启

    bash 复制代码
    systemctl restart docker
  • 设置开机自动启动

    bash 复制代码
    systemctl enable docker
  • 测试

    bash 复制代码
    docker run hello-world
  • 查看docker 当前的状态

    bash 复制代码
    systemctl status docker
  • 查看具体的错误信息

    bash 复制代码
    systemctl status docker -l
    systemctl status docker.service
  • 查看docker的版本信息

    bash 复制代码
    docker version

二、docker安装mysql

  1. 拉取MySQL镜像

    在进行MySQL容器的部署之前,需要先拉取MySQL镜像。可以通过以下命令拉取官方提供的MySQL镜像:

    bash 复制代码
    docker pull mysql
  2. 创建MySQL容器

    先创建一个简单的mysql容器实例

    bash 复制代码
    docker run -p 3306:3306 --name  sample-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

    复制里面的/etc/mysql文件夹

    bash 复制代码
    docker cp sample-mysql:/etc/mysql/. /data/mysql/conf

    删除掉临时容器

    bash 复制代码
    docker rm -f sample-mysql

    启动完整的容器命令

    docker run

    -p <映射端口>:<服务端口>

    --name mysql

    -e MYSQL_ROOT_PASSWORD=123456

    -v /data/mysql/log:/var/log/mysql

    -v /data/mysql/data:/var/lib/mysql

    -v /data/mysql/conf:/etc/mysql

    --privileged=true

    -d mysql:xxx(docker拉取的mysql的镜像版本号)

    示例:

    自定义端口启动完整命令

    bash 复制代码
    docker run -p 13306:3306 --name mysql01 --restart=always --privileged=true \
    -v /data/mysql/log:/var/log/mysql \
    -v /data/mysql/data:/var/lib/mysql \
    -v /data/mysql/conf:/etc/mysql \
    -v /etc/localtime:/etc/localtime:ro \
    -e MYSQL_ROOT_PASSWORD=123456 -d mysql:latest

    启动命令解释:

    -p 3306:3306:指定宿主机端口与容器端口映射关系

    --name mysql:创建的容器名称

    --restart=always:总是跟随docker启动

    --privileged=true:获取宿主机root权限

    -v /usr/local/mysql/log:/var/log/mysql:映射日志目录,宿主机:容器

    -v /usr/local/mysql/data:/var/lib/mysql:映射数据目录,宿主机:容器

    -v /usr/local/mysql/conf:/etc/mysql:映射配置目录,宿主机:容器

    -v /etc/localtime:/etc/localtime:ro:让容器的时钟与宿主机时钟同步,避免时区的问题,ro是read only的意思,就是只读。

    -e MYSQL_ROOT_PASSWORD=123456:指定mysql环境变量,root用户的密码为123456

    -d mysql:latest:后台运行mysql容器,版本是latest。

    命令执行之后如下图:

三、测试mysql连接

使用数据库连接工具测试mysql是否能够连接

bash 复制代码
mycli -h 127.0.0.1 -P 13306 -u root -p 123456

连接成功结果如下图:

相关推荐
摸鱼也很难42 分钟前
Docker 镜像加速和配置的分享 && 云服务器搭建beef-xss
运维·docker·容器
鸠摩智首席音效师4 小时前
Docker 中如何限制CPU和内存的使用 ?
docker·容器
Michaelwubo4 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
jingyu飞鸟4 小时前
centos-stream9系统安装docker
linux·docker·centos
好像是个likun4 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
White_Mountain5 小时前
在Ubuntu中配置mysql,并允许外部访问数据库
数据库·mysql·ubuntu
老王笔记5 小时前
GTID下复制问题和解决
mysql
玖疯子7 小时前
介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
docker
暴富的Tdy7 小时前
【快速上手Docker 简单配置方法】
docker·容器·eureka
Lojarro7 小时前
【Spring】Spring框架之-AOP
java·mysql·spring