两个文件系统有块区域Area,我们要做的是把两个Area做文件映射

jesse腾讯云上有个linux的环境,版本比较老了

简书的地址:
https://www.jianshu.com/p/b3bf647a726e
先把旧版的移除掉

yum -y remove docker docker-common container-selinux

设置新版本的docker的地址

yum-config-manager \
--add-repo \
https://docs.docker.com/v1.13/engine/installation/linux/repo_files/centos/docker.repo



安装完成后启动docker

启动后再看下docker的版本

石墨文档的地址
课程中使用的 docker 命令文档:
https://shimo.im/docs/anrlYMFEYloN52c8/ 
mount是用于集群的

这里先来实验Volume这种方式
这里的--volume可以缩写成-v


在腾讯云上新建dokcer/mysql/config的文件夹


然后在mysqk下面再去新建db文件夹。
config用来防止mysql的配置文件的

在config下新建my.cnf文件


开始调用

进入etc/docker文件夹

编辑daemon.json这个文件
vim daemon.json:编辑这个文件。但是没有这个文件。
我们用vi 新建daemon.json这个文件

把阿里云上的镜像拷贝过去


打开这个文件看一下
cate daemon.json

systemctl restart docker:重启docker

然后再来执行这个语句,他会去mysql的官方去下载mysql的镜像

这里报错了


删除这个mysql01

这里是有config和data这两个文件夹。
需要在mysql的目录下有个data文件夹

再次执行还是报错了

问题是my.cnf居然是一个文件夹

移除掉这个文件夹

在config下创建my.cnf这个文件
vi my.cng


再次查看一下,确实是一个文件了


再次执行。先把之前的删掉,再去执行

docker logs mysql01:查看执行的日志

cokder ps查看到mysql01已经启动了

docker logs mysql01:找到root的默认密码

docker exec -it mysql01 bash:exec执行base 进入到mysql01

使用root登陆,然后输入密码

使用这个命令设置mysql的密码

看到root还是只能在localhost上登陆

再来看下字符集的问题,依然没有utf-8

退出这个容器:exit

进入docker下的mysql文件夹 下面已经有很多mysql的文件在这里了

进入config文件夹下,这里有我们的my.cnf这个文件

vim my.cnf这个文件

加入字符集的配置

docker restart mysql01这个容器

再次进去这个mysql容器然后root登陆,

再次查看我们的字符集。已经生效了

exit:先退出这个容器
dcoker stop mysql01:然后停止这个容器

docker rm mysql01:删除这个mysql01的容器

docker ps -a没有任何容器是在运行的

我们还可以使用这个命令,把原来的配置文件和数据都加载过来


执行上面那段命令后,再用docker ps 查看容器

还在启动,启动我们看下字符集是否还是原来我们设置的那样

进入mysql01这个容器

root登陆进去。面是password123
看到字符集还是之前我们设置的

35.Docker安装Mysql挂载Host Volume的更多相关文章

  1. docker安装mysql挂载外部配置和数据目录

    从docker hub上可以找到mysql外挂配置和数据目录的一些文档说明 https://hub.docker.com/_/mysql 从该文档中可以了解到,mysql的默认配置为/etc/mysq ...

  2. docker安装mysql挂载宿主本地目录资源后无法启动的问题

    可能是权限问题,添加--privileged=true参数: docker run -p : --name zsmysql -v $PWD/data:/var/lib/mysql -v $PWD/lo ...

  3. Docker学习实践 - Docker安装MySql数据库

    Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...

  4. docker 安装mysql mongo

    Docker安装Mysql 1.拉取镜像 docker pull mysql/mysql-server 2.运行mysql docker run -d -p : --name [Name] [Imag ...

  5. docker初识-docker安装、基于docker安装mysql及tomcat、基本命令

    一.docker是什么 用go语言开发,开源的应用容器引擎,容器性能开销极低 二.整体架构图 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 r ...

  6. 使用docker安装mysql和redis

    本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...

  7. 安装docker并使用docker安装mysql

    安装Docker 1. Docker 教程地址:https://www.runoob.com/docker/centos-docker.install.html 2.安装docker 命令:yum i ...

  8. docker安装mysql主从

    docker安装mysql主从 启动主库: 1.docker run --name master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5 ...

  9. Docker安装MySql完整教程、实操

    docker:官网 docker:镜像官网:        镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本(指定版本:docker p ...

随机推荐

  1. ADAS

    1 什么是ADAS advanced driver assistance system,即高级驾驶员辅助系统.是基于车上各种传感器的应用,如摄像头.雷达.激光器等. 2 ADAS的构成部分 2.1 a ...

  2. php计算数组的维数

    function array_dim($arr){ if(!is_array($arr)) return 0; else{ $max1 = 0; foreach($arr as $item1){ $t ...

  3. 谷歌postman插件的安装与使用

    下载地址:http://pan.baidu.com/s/1kTh1g4B 安装方法: 1.下载并解压 2.解压后.打开谷歌浏览器.选择很多其它工具→扩展程序,如图 3.勾选开发人员模式 4.选择载入正 ...

  4. SNMP服务安装 Centos6.8环境网络安装

    概念: snmp是英文“Simple Network Management Protocol”的缩写,意为:简单网络管理协议. snmp是目前最常用的环境管理协议. snmp被设计成与协议无关的. s ...

  5. Windows编程MessageBox函数

    API: int MessageBox(HWND hWnd, LPCTSTRlpText, LPCTSTRlpCaption, UINTuType); MSDN描述: This function cr ...

  6. 20145239 《Java程序设计》第6周学习总结

    20145239 <Java程序设计>第6周学习总结 教材学习内容总结 10.1.1串流设计 Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象. 输入串流代表对象 ...

  7. 在WAMPSERVER下增加多版本的PHP(PHP5.3,PHP5.4,PHP5.5 ,PHP5.6)支持。

    本人预装了一个wamp的集成环境(Apache 2.4.9 + PHP 5.5.12 + mysql 5.6.17),今天在wamp环境下 添加PHP多版本 (PHP 5.5.30).中间两个过程,1 ...

  8. win 10 安装.msi 程序出现the error code is 2503

    解决方法: C:\Windows\temp文件夹的权限不够,需要给其更高权限 右键temp文件夹 点击属性进入属性对话框 组或用户名的里面的All APPLICATION PACKAGES和所有受限制 ...

  9. android使用mina需要注意的问题

    1.第三方jar包的使用       如果在Java Build Path中使用Add External JARs这种方式,运行时会有找不到类的错误(我的上面有,如果你没出现,恭喜你),上网查了几种方 ...

  10. MyBatis映射文件中用#和$传递参数的特点

    在MyBatis映射文件中用#和$传递参数的特点, #是以占位符的形式来传递对应变量的参数值的,框架会对传入的参数做预编译的动作, 用$时会将传入的变量的参数值原样的传递过去,并且用$传递传递参数的时 ...