28

このコマンドを実行して、Tomcat の公式 Docker イメージを取得しました。

docker run -it --rm tomcat:8.0

これを基本イメージとして使用することで、war ファイルをtomcat webappsフォルダーに含む新しいイメージを作成する必要があります。こんな感じで Dockerfile を作成しました。

From tomcat8
ADD warfile /usr/local/tomcat

イメージをビルドしてこの Dockerfile を実行すると、Tomcat のフロント ページが表示されません。

warfile を公式の Tomcat イメージ webapp フォルダーに追加する方法を教えてください。

4

5 に答える 5

70

レポのドキュメントから読んで、そのようなことをします

FROM tomcat
MAINTAINER xyz

ADD your.war /usr/local/tomcat/webapps/

CMD ["catalina.sh", "run"]

次に、イメージをビルドしますdocker build -t yourName <path-to-dockerfile>

そしてそれを実行します:

docker run --rm -it -p 8080:8080 yourName
  • --rm停止するとすぐにコンテナを削除します
  • -pポートをホストに転送します (または、この IP に boot2docker を使用する場合)
  • -itインタラクティブモードを許可するため、何かが展開されたかどうかを確認できます
于 2015-01-07T13:16:48.467 に答える
3

docker run -it --rm --name MYTOMCAT -p 8080:8080 -v .../wars:/usr/local/tomcat/webapps/ tomcat:8.0

warフォルダーには、展開するwarが含まれています

于 2016-07-19T15:07:24.673 に答える
2

webappsフォルダの確認方法を教えてください。

webappsフォルダーは docker コンテナー内にあります。コンテナーにアクセスする場合webappsは、コンテナー内にホスト ディレクトリをマウントして、それをwebappsフォルダーとして使用できます。そうすれば、docker にアクセスせずにファイルにアクセスできます。詳細はこちら

ログにアクセスするには、コンテナを実行するときにそれを行うことができます。

docker run -rm -it -p 8080:8080 **IMAGE_NAME** /path/to/tomcat/bin/catalina.sh  && tail -f /path/to/tomcat/logs

または、docker コンテナーを起動してから、次のようにします。

docker exec -it **CONTAINER_ID** tail -f /path/to/tomcat/logs
于 2015-01-23T07:58:04.937 に答える