windows10连接虚拟机CentOS7系统中docker的tomcat、MySQL

windows下连接虚拟机CentOS7系统中docker的tomcat、MySQL

一、 连接tomcat

虚拟机中系统网络连接方式采用NAT方式
1、通过docker pull tomcat 下载tomcat容器,利用docker run --name mytomcat -d -p 8081:8080 tomcat启动tomcat,如果外部windows系统访问不到tomcat,需要在windows系统中以管理员身份打开PowerShell, 设定docker路由,输入命令route add 172.17.0.0 mask 255.255.255.0 192.168.123.110
2、访问docker容器tomcat的工作空间后发现,webapps文件夹下为空,而还有一个文件夹是:webapps.dist,我们需要的东西在这个文件夹下。我的做法是将空的webapps目录删除,然后将webapps.dist目录改名为webapps。
1)、通过:docker run --name mytomcat -d -p 8081:8080 tomcat启动tomcat
2)、执行进入容器命令:docker exec -it mytomcat /bin/bash
3)、删除webapps空目录;rmdir webapps
4)、将webapps.dist改名为webapps:mv webapps.dist webapps
在浏览器中输入访问地址就连接上了。

windows10连接虚拟机CentOS7系统中docker的tomcat、MySQL

二、连接MySQL

在使用docker pull mysql 后,运行mysql:docker run --name mysql01 -e MYSQL_ROOT_PASSWORD=xxxxx(密码) -d mysql
使用navicat连接出现下面错误。
windows10连接虚拟机CentOS7系统中docker的tomcat、MySQL
解决办法:
1)、进入docker中的mysql:docker exec -it mysql01 /bin/bash
2)、登录mysql:mysql -uroot -p(xxxx)
3)、远程连接进行授权:GRANT ALL ON *.* TO 'root'@'%';
4)、更改加密规则:ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
5)、设定(更改)密码:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '******';
6)、刷新权限:flush privileges;

连接成功:
windows10连接虚拟机CentOS7系统中docker的tomcat、MySQL