Docker组服务—Tomcat+Apache

我们在之前的学习中,已经能够使用镜像实例化一个容器了;那么使用中的话,Docker的实际应用应该是要部署服务到容器上的;一个应用使用一个容器来跑,各个应用之间部署在容器中,通过容器之间进行访问,达到实际应用的效果。

我们今天来部署一个简单的服务,来模拟实际的应用

首先我们需要准备好镜像:Tomcat、Apache、mysql

Docker组服务—Tomcat+Apache_第1张图片

添加端口映射: 最好使用docker的随机分配端口

使用docker -P 即可

 访问:虚拟机IP:端口

Docker组服务—Tomcat+Apache_第2张图片

 Apache服务

Docker组服务—Tomcat+Apache_第3张图片

 创建Docker的自定义网络

Docker组服务—Tomcat+Apache_第4张图片

 将服务加入到自定义网络

 查看服务IPDocker组服务—Tomcat+Apache_第5张图片

Apache ping Tomcat 

 Docker组服务—Tomcat+Apache_第6张图片

 从Tomcat获取服务Apache

 那么,逆向也是一样的

Mysql的使用:使用物理机操作同步到Docker容器里

使用mysql:5.7版本镜像,这样不会在后面因为Mysql密码的问题而出错

进入到mysql

此时Docker里的mysql数据库 

 Docker组服务—Tomcat+Apache_第7张图片

 外部连接到Docker里的数据库,连接工具我使用的是mysql自带的WorkBench(需要自己手动下一下)

Docker组服务—Tomcat+Apache_第8张图片

 在外部创建数据库 test

Docker组服务—Tomcat+Apache_第9张图片

 在Docker里查询

Docker组服务—Tomcat+Apache_第10张图片

 Ok,没有问题!

那么怎样将mysql与我们的服务连起来呢?

最好的方式之一,就是使用Docker的一条命令 --link

docker run -d -P --Link 容器:容器别名  容器ID

 那么这样就可以将所要的目的容器连在一起了

例如:Tomcat 容器连接 Apache

我们可以查看Tamcat容器的地址映射关系 

Docker组服务—Tomcat+Apache_第11张图片

 查看Apache的地址映射关系Docker组服务—Tomcat+Apache_第12张图片

 两者之间的地址映射表都有彼此,那么关联容器后,不仅可以使用IP进行访问,还可以通过容器的别名进行访问了

 

 

你可能感兴趣的:(docker,容器)