如何在docker中运行mysql实例

Docker是一种新兴的虚拟化技术,能够一定程度上的代替传统虚拟机。下图是容器跟虚拟机的对比

我们也可以在docker hub上注册个账号,构建自己的镜像放到hub上,以便复用

docker hub地址 

慕课网学习地址

总结下使用docker搭建mysql实例的过程

查看linux版本可以通过下面命令进行查看 

# cat /proc/version
Linux version 4.19.128-microsoft-standard (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 SMP Tue Jun 23 12:58:10 UTC 2020

 

安装mysql,可以通过search命令查看仓库的mysql的各个版本

docker search mysql

通过pull命令进行拉去镜像操作,默认拉去的是latest版本,可以通过冒号来下载指定版本,如想下载5.7的mysql

docker pull mysql:5.7

现在下来后可以通过 docker images 命令查看下载的镜像

 

想运行mysql,把它放到容器里面运行下就ok(貌似说的不咋合理)

运行直线需要做一些配置,比如数据库data的存放位置,以及自定义的一些配置,比如mysql默认是区分大小写的

我是在当前的用户下面进行操作的,如下

 

创建一个data文件夹用于存放mysql的表结构,数据等信息 d:\docker\mysql\db

创建一个my.ini文件来进行自定义参数设置, d:\docker\mysql 内容如下

[mysqld]
user=mysql
sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
lower_case_table_names=1
event_scheduler=ON
default-time-zone = '+8:00'
event_scheduler=ON 表示开启事件支持
lower_case_table_names=1 表示数据库不区分大小写
default-time-zone = '+8:00' 表示使用中国时区

ok,准备就绪,启动就准备好了。

具体命令

docker run -itd -p 3006:3306 -e MYSQL_ROOT_PASSWORD=123456 --name cmysql -v /docker/mysql/my.ini:/etc/mysql/my.ini -v /docker/mysql/db:/var/lib/mysql mysql:5.7

各个参数说明

  • run:运行一个容器
  • -d:看做做守护线程(Daemon)
  • -p:进行端口映射,用于暴露给外界让其访问 ,其中第一个是映射到主机的端口,:后的是docker上的端口,这个要注意些。
  • -e:初始化root用户的密码
  • --restar=always:自动重启,比如服务器突然断电,重启服务器之后不需要你重新手动启动
  • --name:自定义容器名称
  • -v:挂载。容器里面的数据你是不能直接访问的,但是你可以将可见目录挂载上去,这样就可以访问了(解释的不咋到位)

启动成功之后会出现一个随机字符串,表示容器的id

可以通过docker ps查看,我是启动了两个。docker ps -a 查看所有容器

启动之后,由于进行了端口映射,可以通过客户端工具入sqlyog,Navicat都可以进行连接

如果想进入容器进行操作,可以通过如下命令

要想退出使用exit,快捷键Ctrl+d

删除容器可以通过

docker rm cmysql

当然了,前提是容器需要关闭,关闭的命令

docker stop cmysql

一样的道理,删除镜像也需要前提条件,那就是被依赖的容器删除了才能进行删除镜像

docker rmi <image id>

ok 这样你就可以正常的使用MySQL了。

docker 下运行 postgresql 的命令

docker run --name pgdata -p 5432:5432 -e POSTGRES_PASSWORD=123456 -v /docker/postgresql10:/var/lib/postgresql/data -d postgres:10.10
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值