通过 docker 在单个 Tomcat 实例上运行不同的 Web 应用映像



目前我在Tomcat 7上运行了2个Web应用程序(WAR(app1和app2:

应用程序1 on http://localhost:8080/app1

应用程序2 on http://localhost:8080/app2

我在 docker 中为 webapp app1 和 app2 创建了两个不同的映像。

现在我想在 docker 中运行这两个映像,以便我可以使用相同的主机和端口访问应用程序:即:本地主机:8080/app1 和本地主机:8080/app2

可能吗?

提前谢谢。

您可以使用 docker-compose 来实现此目的。 docker-compose 可以在同一"主机"上为您构建多个容器。您可以根据需要在docker-compose中包含其他服务,例如数据库或redis服务。然后运行 docker-compose up 命令。

$ docker-compose -f 'myapps-docker-compose.yml' up -d

其中-f是"从文件",-d是分离的。 名为myapps-docker-compose.yml的示例 docker 撰写文件

version: '2.1'
#
services:
redis:
image: 'redis:5.0.5'
# command: redis-server --requirepass redispass
app1:
image: app1
build:
context: .
dockerfile: Dockerfile_app1
app2:
image: app2
build:
context: .
dockerfile: Dockerfile_app2

最新更新