1, 进入容器 比如 myslq1 里面进行操作
docker exec -it mysql1 /bin/bash
2. 退出 容器 交互: exit
3. mysql 启动在容器里面,并且 可以本地连接mysql
docker run --name mysql1 --env MYSQL_ROOT=172.17.%.% --env MYSQL_ROOT_PASSWORD=123456 -v $PWD/mysql_data:/var/lib/mysql -p 33006:33006 -d mysql
/mysql-server:5.7
如果是 win 下要将 $PWD 换为 对应地址
docker run --name mysql1 --env MYSQL_ROOT_HOST=172.%.%.% --env MYSQL_ROOT_PASSWORD=123456 -v D:\Users\10737/mysql_data:/var/lib/mysql -p 33006:3306 -d mysql/mysql-server:5.7
之后会弹出一个框,要输入密码,不是本机密码,而是 docker 用户密码
但是 上面的命令 配置 映射路径这里,docker 没有启动起来。
于是改为
docker run --name mysql1 --env MYSQL_ROOT_HOST=172.%.%.% --env MYSQL_ROOT_PASSWORD=123456 -p 33006:3306 -d mysql:5.7
必须使用 172 , 因为 172 是局域网的 开头的私有网络,
docker 容器 mysql 里面的 地址也是 172 开头的
https://blog.csdn.net/sunnyfg/article/details/80611056
https://blog.csdn.net/jiangyu1013/article/details/80169614
如果使用电脑的连 docker的 mysql 就要使用 本地的IP,这个IP也是 172 开头的,可以通过 ipconfig 查看到。
参考 https://www.jianshu.com/p/746ed277c458
停止 docker stop mysql1
启动 docker start mysql1