如何使用Docker安装MySQL呢?
下文笔者讲述docker中安装mysql的方法及示例分享
docker安装mysql的实现思路
0.安装docker 1.拉取镜像 2.启动容器例:
1.拉取官方镜像 docker pull mysql:5.7 # 拉取 mysql 5.7 docker pull mysql # 拉取最新版mysql镜像 2.检查是否拉取成功 sudo docker images 3.1 数据库容器不需要建立目录映射 sudo docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 –name:容器名,此处命名为mysql -e:配置信息,此处配置mysql的root用户的登陆密码 -p:端口映射,此处映射 主机3306端口 到 容器的3306端口 -d:后台运行容器,保证在退出终端后容器继续运行 3.2.要建立目录映射 sodu docker run -p 3306:3306 --name mysql \ -v /usr/local/docker/mysql/conf:/etc/mysql \ -v /usr/local/docker/mysql/logs:/var/log/mysql \ -v /usr/local/docker/mysql/data:/var/lib/mysql \ -e MYSQL_ROOT_PASSWORD=123456 \ -d mysql:5.7 -v:主机和容器的目录映射关系,":"前为主机目录,之后为容器目录 4.检查容器是否正确运行 docker container ls
连接mysql
1.进入docker本地连接mysql客户端 sudo docker exec -it mysql bash mysql -uroot -p123456 2.使用远程连接软件时需注意 host: 127.0.0.1 port: 3306 user: root password: 123456 3.当容器运行正常 //外部无法访问到MySQL //此时需检查防火墙 ◦防火墙阻拦 # 开放端口: $ systemctl status firewalld $ firewall-cmd --zone=public --add-port=3306/tcp -permanent $ firewall-cmd --reload # 关闭防火墙: $ sudo systemctl stop firewalld //需要进入docker本地客户端设置远程访问账号 $ sudo docker exec -it mysql bash $ mysql -uroot -p123456 mysql> grant all privileges on *.* to root@'%' identified by "password"; mysql> use mysql; Database changed mysql> select host,user,password from user;
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。