1.前提条件

centos7 且内核版本高于3.10, 可通过命令: uname -r 查看内核版本

2.利用yum 安装docker

  安装一些必要的系统工具:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

  添加软件源信息:

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

  更新 yum 缓存:

sudo yum makecache fast

  安装 Docker-ce:

sudo yum -y install docker-ce

  启动 Docker 后台服务:

sudo systemctl start docker

  测试运行 hello-world:

docker run hello-world

  可利用docker ps查看docker启动的容器

  docker安装 可参考: https://www.runoob.com/docker/centos-docker-install.html

3. docker 安装MySQL

  查找MySQL镜像

docker search mysql

  拉起MySQL镜像(:5.7 表示5.7版本)

docker pull mysql:5.7

  运行MySQL容器

docker run -d -p : --privileged=true -v /docker/mysql/conf/my.cnf:/etc/my.cnf -v /docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci

  参数说明:

  run                        run 是运行一个容器

  -d                          表示后台运行

  -p                          表示容器内部端口和服务器端口映射关联

  --privileged=true                         设值MySQL 的root用户权限, 否则外部不能使用root用户登陆

 -v /docker/mysql/conf/my.cnf:/etc/my.cnf   将服务器中的my.cnf配置映射到docker中的/docker/mysql/conf/my.cnf配置
 -v /docker/mysql/data:/var/lib/mysql    同上,映射数据库的数据目录, 避免以后docker删除重新运行MySQL容器时数据丢失
  -e MYSQL_ROOT_PASSWORD=123456        设置MySQL数据库root用户的密码
 --name mysql                   设值容器名称为mysql

  mysql:5.7                    表示从docker镜像mysql:5.7中启动一个容器

  --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci   设值数据库默认编码
 
 新建MySQL用户, 先进入容器
docker exec -it mysql bash
  执行MySQL命令, 输入root密码, 连接MySQL
mysql -uroot -p

  输入密码后, 执行下面命令创建新用户 (用户名: test , 密码: test123)

GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY 'test123' WITH GRANT OPTION;
 

CentOS 中利用docker安装MySQL的更多相关文章

  1. CentOS中利用Docker安装RabbitMQ

    CentOS中利用Docker安装RabbitMQ 1.拉取镜像(带管理平台) #docker pull rabbitmq:3.7.7-management 2.启动容器: #docker run - ...

  2. CentOS中利用Docker安装Redis

    CentOS中利用Docker安装Redis 1.拉取镜像 #docker pull redis:4.0.10 2.加载镜像 #docker run -p 6379:6379 --name test- ...

  3. centos 7使用docker安装lnmp和redis环境

    #================Docker基础操作========================== #启动docker服务service docker start#搜索可用docker镜像#h ...

  4. CentOS7利用docker安装MySQL5.7

    CentOS7利用docker安装MySQL5.7 前提条件 centos7 且内核版本高于3.10, 可通过以下命令查看内核版本 uname -r 利用yum 安装docker 安装一些必要的系统工 ...

  5. 使用Docker安装Mysql

    最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...

  6. Centos下使用Docker部署MySql

    本文讲述 CentOS 系统 Docker 中安装 MySql 的过程 步骤 1. 拉取 Docker Hub 官方提供的mysql镜像 docker pull mysql:5.7 2.运行容器 do ...

  7. 在 树莓派(Raspberry PI) 中使用 Docker 运行 MySQL

    在 树莓派(Raspberry PI) 中使用 Docker 运行 MySQL 本文主要利用 biarms 提供的 Dockerfile 进行安装. 笔者最新发现! MySQL 5.7 Docker ...

  8. 【Linux】【自学笔记】Linux下面docker安装mysql

    写在前面: 捣腾继续,之前把一个SpringBoot的程序安装在docker上面,参考链接:https://www.cnblogs.com/aki-stones/p/2019-11-01-note.h ...

  9. Docker安装MySQL,Redis,阿里云镜像加速

    Docker安装 虚拟化容器技术.Docker基于镜像,可以秒级启动各种容器.每一种容器都是一个完整的环境,容器之间相互隔离. 如果之前安装的有其他版本,卸载旧的版本. $ sudo yum remo ...

随机推荐

  1. Java-LockSupport

    LockSupport 和 CAS 是 Java 并发包中很多并发工具控制机制的基础,它们底层其实都是依赖 Unsafe 实现. LockSupport 提供 park() 和 unpark() 方法 ...

  2. Go语言学习之介绍与环境搭建

    Go语言第一课 一.Go语言介绍 1.什么是Go语言? Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pik ...

  3. qt5之网络通信

    QT5 TCP网络通讯 服务器与客户端建立连接listen() - connectToHost();  触发newPendingConnect信号 实时数据通讯write(); read();  触发 ...

  4. GCC4.7+中如何替代C11中的_Generic

    C11标准中,一个非常重大的特性更新就是增加了Generic Selection这个特性.这个特性能使得C11支持轻量级的泛型编程,使得可以把一组具有不同类型而却有相同功能的函数抽象为一个接口. 对于 ...

  5. 数据分析 - seaborn 模块

    seaborn 模块 简述 对 matplotlib 模块进行了二次封装, 底层依旧使用还是 matplotlib 的, 但是在此基础上增加了很多的易用性模板, 更加方便使用 引用使用 import ...

  6. 为什么HashMap继承了AbstractMap还要实现Map?

    前言 之前看源码一直忽略了这个现象,按理说HashMap的父类AbstractMap已经实现了Map,它为什么还要实现一次呢?遂上网查了一下,背后原因让人大跌眼镜. 原因 这是类库设计者的拼写错误,其 ...

  7. C++之ListNode

    单链表,弄清楚可stl中list的区别 ListNode的结构 struct ListNode { int val; //当前结点的值 ListNode *next; //指向下一个结点的指针 Lis ...

  8. tcp协议相关概念

    conv 会话IDmtu 最大传输单元mss 最大分片大小state 连接状态(0xFFFFFFFF表示断开连接)snd_una 第一个未确认的包snd_nxt 待发送包的序号rcv_nxt 待接收消 ...

  9. 这些喜闻乐见的Java面试知识点,你都掌握了吗?

    最近分享了一些有关学习方法和经验的文章,得到了很多读者的反馈,恰巧大家在昨天推文中的投票里一直选择了"Java基础的复习方法"这一项,那么今天我们就谈谈这方面的内容吧. 其实对于J ...

  10. hive中case命令