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 [ ~]# 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 [ ~]# docker exec -it 96a49c6e7235 /bin/bash :/# 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服务(直接重新启动容器):<span>docker restart containerID/containerName</span>
此时可以使用Navicat等工具测试连接mysql
相关推荐
魅惑青花瓷 2020-11-11
yangkang 2020-11-09
MichaelJScofield 2020-11-06
TaoTaoFu 2020-11-06
liaochaowu 2020-11-16
ChlatZed 2020-11-11
lnkToKing 2020-10-29
ChlatZed 2020-10-27
ChlatZed 2020-10-13
时光流水 2020-09-23
yangkang 2020-09-23
changecan 2020-09-22
dusuanyun 2020-09-21
newisI 2020-09-01
liaochaowu 2020-09-14
ShangQuan0 2020-09-10
fearlessxjdx 2020-09-04
libra0 2020-09-02
ChlatZed 2020-08-23
王道革 2020-11-25
lihongtai 2020-11-09
xysoul 2020-11-03