docker鏡像掛載目錄_Docker中运行MySQL5.7并挂载宿主机目录到镜像

1.1 拉取mysql镜像

docker pull mysql:5.7

1.2 创建用于挂载的目录

mkdir –p /docker/mysql/logs /docker/mysql/conf /docker/mysql/data

1.3 使用镜像创建容器

#将容器中MySQL的3306端口映射到本地的3306端口,并设置登录密码为:123456

docker run

--name mysql5.7

-p 3306:3306

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

-v /docker/mysql/conf:/etc/mysql/conf.d

-e MYSQL_ROOT_PASSWORD=123456

-d mysql:5.7

如果启动多个容器需要删除某个 可以执行docker ps -l 查询当前运行的容器 docker rm 容器id 删除对应的容器实例

1.4 命令参数解析:

--name:容器名

-p:映射宿主主机端口

-v:挂载宿主目录到容器目录

-e:设置环境变量,此处指定root密码

-d:后台运行容器

1.5 进入容器

docker exec -it 容器名字 /bin/bash

[root@dc01 ~]# docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

96a49c6e7235 mysql:5.7 "docker-entrypoint.s…" 4 weeks ago Up 2 minutes 0.0.0.0:3306->3306/tcp mysql5.7

fa56f865bd26 nginx:latest "nginx -g 'daemon of…" 4 weeks ago Up 16 minutes 0.0.0.0:80->80/tcp vigilant_swirles

[root@dc01 ~]# docker exec -it 96a49c6e7235 /bin/bash

root@96a49c6e7235:/# mysql -uroot -p123456

如果需要navicat远程登录需要修改mysql的配置文件/etc/mysql/my.conf,有些版本配置文件地址为/etc/mysql/mysql.conf.d/mysqld.cnf,将bind-address地址设置为无ip访问限制:

bind-address=0.0.0.0

如果报出bash: vi: command not found,需要我们在docker容器内部自行安装vim。使用apt-get install vim命令安装vim

会出现如下问题:

Reading package lists... Done

Building dependency tree

Reading state information... Done

E: Unable to locate package vim

执行apt-get update,然后再次执行apt-get install vim即可成功安装vim

修改完配置  需要重启mysql服务(直接重新启动容器):docker restart containerID/containerName

此时可以使用Navicat等工具测试连接mysql

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值