【问题标题】:How to deploy webapp or war file in tomcat that is running in docker container如何在 docker 容器中运行的 tomcat 中部署 webapp 或 war 文件
【发布时间】:2015-08-19 12:12:29
【问题描述】:

我已经创建了 Docker 容器并且 Tomcat 在这个容器中运行。如何在 docker 容器中运行的 Tomcat 中部署 webapp 或 war 文件。

【问题讨论】:

标签: docker


【解决方案1】:

首先创建一个 Dockerfile:

FROM library/tomcat
RUN rm -rf /usr/local/tomcat/webapps/*
ADD ./relative/path_to_war.war /usr/local/tomcat/webapps/ROOT.war

然后构建 Docker 镜像

$ docker build -t user/image_name .

最后运行 docker 容器。

$ docker run --name container_name -p 80:8080 -d user/image_name

之后,您的 webapp 应该在默认 http 80 端口上的 Docker 主机的 ip 上做出响应。

您可能需要将数据库容器链接到您的 web 应用,请参阅Docker documentation 了解更多信息

【讨论】:

    【解决方案2】:

    您可以实现使用 Tomcat Docker 的有效方式。

    docker run -d -p 80:8080 -v <mount-path>:/usr/local/tomcat/webapps/ tomcat:8.0 
    

    然后将 .war 文件复制到已安装的卷中。这将消除每次代码更改时重新启动 Tomcat Docker 的需要。可以实现零停机时间。

    如果是一次性部署,那么您可以创建一个自定义 Docker 并将 war 文件复制到 /usr/local/tomcat/webapps/ 并启动 Docker。

    【讨论】:

      猜你喜欢
      • 2018-02-13
      • 1970-01-01
      • 2015-05-25
      • 2017-02-03
      • 1970-01-01
      • 1970-01-01
      • 2015-03-19
      • 2022-06-24
      • 1970-01-01
      相关资源
      最近更新 更多