1. 获取Mysql镜像
首先我们需要找到官方的Mysql镜像,并把它拉取到本地仓库。
$ docker search mysql
$ docker pull mysql
2. 运行容器
我们运行Docker镜像,以获取容器。其中,我们设置root账号初始密码(123456),映射本地宿主机端口3306到Docker端口3306。命令如下所示:
$ docker run -it --rm --name mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql
3. 查看已运行的容器
$ docker ps -a
4. 进入mysql容器:
docker exec -it mysql bash
5. 在容器内登陆Mysql:
root@a42f31094df5:/# mysql -uroot -p
一般这个时候如果尝试navicat链接,八成会发生错误。我们需要在Mysql中进行如下的配置。
mysql> ALTER user 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
mysql> FLUSH PRIVILEGES;
6.远程连接
我们可以在本地用navicat软件对我们的Mysql的Docker容器进行连接。
7.Docker本地测试
我们在本地建立一个新表UserInfo。
为了验证我们在本地对数据库所做的修改,我们在Docker容器中输入:
USE sys;
show tables;
不难发现,我们在本地对mysql所做的修改果然在Docker中得到了体现,这也证明了我们成功远程连接了Mysql的Docker容器。