记得之前做网站开发的时候,因为服务端用的 MySQL 数据库,为了方便调试以及隔离生产与开发环境,自己就在本地也安装了一个 MySQL 数据库。但是用着用着慢慢的也发现了一些不舒服的地方,比如常驻后台的服务,半夜突然跳出来吓唬人的更新窗口。直到我遇见了 Docker,Docker 是一个比虚拟机更加轻量的虚拟化技术,它使用容器将应用与宿主环境隔离开。

在 Windows 上安装 Docker

首先启用 Windows 10 的容器功能,然后去 Docker 的官网,下载安装包。

跟着安装程序走完流程,Docker 就在 Windows 上愉快的游起来啦~

设置镜像地址

Docker 在创建容器的时候,需要从国外的网站下载必要的文件,由于显而易见的原因,我们在国内访问这个网站的速度不怎么快,所以我们需要设置一下国内可用的镜像。

我选择的是中科大的反向代理:http://docker.mirrors.ustc.edu.cn

方法如下:

  • 右键单击托盘里面的 Docker 鲸鱼图标

  • 单击 Settings

  • 在下图中的红框位置填写中科大镜像地址

  • 点击 Apply

下载 MySQL 镜像

打开 PowerShell

docker run --name zeekodb -e MYSQL_ROOT_PASSWORD=2333 -p 3307:3306 -d mysql

这条指令会从 Docker 的仓库下载最新的 MySQL 稳定版镜像,然后创建一个叫做 zeekodb 的容器,我们可以使用密码为 2333 的 root 账户通过 3307 端口连接到这个数据库。

一些基本操作

docker stop zeekodb //停止这个容器
docker start zeekodb //运行这个容器

这样我们就可以完全的把 MySQL 跟我们的 Windows 隔离开了。

自定义数据存储位置

上述的方法会把数据存在容器内部,如果我们需要更换新的数据库容器或者把数据迁移出来会不怎么方便,所以可以把数据文件存放在宿主机上。

首先要跟 Docker 共享一个硬盘,还是上面的 Setting 界面,把需要共享的硬盘勾上,然后点击 Apply。

创建新的容器

docker rm -f zeekodb // 删除之前的数据库

docker run --name zeekodb -v D:\DockerData\zeekodb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=2333 -p 3307:3306 -d mysql

这个语句会创建一个与上面一摸一样的数据库,唯一的不同是,这个容器会把 MySQL 的数据文件储存在宿主机的 D:\DockerData\zeekodb 这个目录下。

沉迷 Docker,无法自拔(在 Docker 中运行 MySQL)的更多相关文章

  1. Windows10下的docker安装与入门 (三) 创建自己的docker镜像并且在容器中运行它

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...

  2. 开发中运行mysql脚本,发现提示mysql提示Column count doesn't match value count at row 1错误

    开发中运行mysql脚本,发现提示mysql提示Column count doesn't match value count at row 1错误, 调试后发现是由于写的SQL语句里列的数目和后面的值 ...

  3. docker 中运行 mysql

    在宿主机Host的终端执行: 1. 搜索docker镜像仓库中提供的mysql docker search mysql 2.下载mysql镜像 docker pull mysql 3.改变目录权限,非 ...

  4. 在docker中运行mysql实例

    Docker是一种新兴的虚拟化技术,能够一定程度上的代替传统虚拟机.下图是容器跟虚拟机的对比 对docker有个大致了解,学习docker断断续续,虽说学习不能急于求成,但断断续续学的话,浪费的碎片化 ...

  5. docker学习(5) 在mac中创建mysql docker容器

    github上有一个专门的docker-libary项目,里面有各种各样常用的docker镜像,可以做为学习的示例,今天研究下其中mysql镜像的用法,国内镜像daocloud.io也能找到mysql ...

  6. 在 Docker 中运行 MySQL

    首先启用 Windows 10 的容器功能,然后去 Docker 的官网,下载安装包. 跟着安装程序走完流程,Docker 就在 Windows 上愉快的游起来啦~ 设置镜像地址 Docker 在创建 ...

  7. Windows10下的docker安装与入门 (二)使用docker引擎在容器中运行镜像

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...

  8. 在docker中运行ASP.NET Core Web API应用程序

    本文是一篇指导快速演练的文章,将介绍在docker中运行一个ASP.NET Core Web API应用程序的基本步骤,在介绍的过程中,也会对docker的使用进行一些简单的描述.对于.NET Cor ...

  9. 在Linux和Windows的Docker容器中运行ASP.NET Core

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 译者序:其实过去这周我都在研究这方面的内容,结果周末有事没有来得及总结为文章,Scott H ...

随机推荐

  1. ASP.NET Core集成现有系统认证

    我们现在大多数转向ASP.NET Core来使用开发的团队,应该都不是从0开始搭建系统,而是老的业务系统已经在运行,ASP.NET Core用来开发新模块.那么解决用户认证的问题,成为我们的第一个拦路 ...

  2. app.config 配置多项 配置集合 自定义配置(3)

    再说说利用app.config配置多个自定义的方法.先看这个例子:美国家庭Simpson的家里有父亲母亲和三个儿女,而中国的老王只有独生子女.结构如下: <?xml version=" ...

  3. Oracle.DataAccess.Client.OracleCommand”的类型初始值设定项引发异常。

    Oracle.DataAccess.Client.OracleCommand”的类型初始值设定项引发异常. 64位系统下,部署32位odp.net,出现问题.解决方法:卸载32位xcopy odt.n ...

  4. shell脚本 案例

    1,写一个循环,ping整个子网的ip.   使用while循环 #!/bin/bash  ip=223  while [ "$ip" -ne "239" ] ...

  5. 转贴---Performance Counter(包含最全的Windows计数器解释)

    http://support.smartbear.com/viewarticle/55773/ 这个Article中介绍了一个新工具,TestComplete,把其中涉及到性能计数器的部分摘抄出来了. ...

  6. asp.net web api 构建api帮助文档

    1 概要 创建ASP.NET Web Api 时模板自带Help Pages框架. 2 问题 1)使用VS创建Web Api项目时,模板将Help Pages框架自动集成到其中,使得Web Api项目 ...

  7. Python——正则表达式

    此篇文章结合小甲鱼的笔记和视频整理. 1 编译 Python 通过 re 模块为正则表达式引擎提供一个接口,同时允许你将正则表达式编译成模式对象,并用它们来进行匹配. 正则表达式被编译为模式对象,该对 ...

  8. 极光推送_总结_01_Java实现极光推送

    一.代码实现 1.配置类—Env.java package com.ray.jpush.config; /**@desc : 极光推送接入配置 * * @author: shirayner * @da ...

  9. 笔记(json)实现前后端交互案例

    1:首先创建一个项目如:(说明:此项目是在eclipse创建的) 2.在创建相对应的包如: 3.创建写好相对应的配置文件如: applicationContext.xml具体内容如下: <?xm ...

  10. 迷宫问题-POJ 3984

    迷宫问题 Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 24348   Accepted: 14206 Descriptio ...