首页 > 数据库技术 > 详细

Docker创建MySQL容器并实现远程访问

时间:2019-06-07 14:53:00      阅读:151      评论:0      收藏:0      [点我收藏+]

Docker配置MySQL容器

拉取MySQL镜像

docker pull mysql:5.6

有可能会因为网络问题失败,重复尝试。

创建容器

docker run -d --name selfdefinename -p 3306:3306 -e MYSQL_ROOT_PASSWORD=rw mysql:5.6

-d 后台运行,--name 设置名称 selfdefinename 是用户自定义的容器名称,-p 设置端口映射,第一个3306是当前主机的端口,第二个3306指容器中的端口;-e 设置root用户密码为rw;最后的mysql:5.6 可以用imageID代替,代表用于创建容器的镜像。

注:值得注意的是,如果主机已经安装了mysql,那么它会占用3306端口,docker中的mysql将无法正常启动。

解决方式:

1.卸载或暂停主机的mysql服务。

#暂停主机上的mysql
systemctl stop mysqld

2.创建容器时,修改docker容器的端口映射

docker run -d --name selfdefinename -p 10086:3306 -e MYSQL_ROOT_PASSWORD=rw mysql:5.6

10086是容器外部端口号,只要不被占用可以任意指定。3306是容器内部端口,mysql在不更改其配置文件时默认只会监听3306端口。

运行容器

一般创建好容器后容器会自动运行

#运行容器
docker start 容器名或容器ID

允许远程访问

#首先要进入容器内部
docker exec -it 容器名或容器ID

#进入mysql
mysql -u root -p

#授权
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "rw";
flush privileges;

#退出
exit
exit

Docker常用命令

新建容器

docker run -d --name 自定义容器名 镜像ID或镜像名

展示当前运行的容器

docker ps

展示所有容器

docker ps -a

展示所有本地镜像

docker images

运行容器

docker start 容器名或容器ID

停止运行容器

docker stop 容器名或容器ID

删除容器

docker rm -f 容器名或容器ID

进入容器内容bash

docker exec -it 容器名或容器ID bash
#退出容器命令:exit

关闭docker服务

systemctl stop docker

 

Docker创建MySQL容器并实现远程访问

原文:https://www.cnblogs.com/whoyoung/p/10988136.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!