2016-11-08 17 views
2

docker-composeを使用してtomcatを実行しようとした人がいて、Webアプリケーションを正常に実行しようとしているのだろうかと疑問に思いました。私は以下のドッカー作成ファイルをまとめました。Tomcatのdocker-compose実行中のWebアプリケーション

tomcat: 
    image: bitnami/tomcat:latest 
    environment: 
     - TOMCAT_USERNAME=root 
     - TOMCAT_PASSWORD=password 
    links: 
    - db:mysql 
    ports: 
    - 8585:8080 
    volumes: 
    - ./tomcat:/bitnami/tomcat 
db: 
    image: mariadb 
    ports: 
     - 3636:3306 
    environment: 
    MYSQL_ROOT_PASSWORD: password 
phpmyadmin: 
    image: phpmyadmin/phpmyadmin 
    links: 
     - db:mysql 
    ports: 
     - 8689:80 
    environment: 
     MYSQL_USERNAME: root 
     MYSQL_ROOT_PASSWORD: password 
     PMA_HOST: mysql 

コンテナのすべての実行と私は私が実行していることを示して私の.warファイルを展開しているapacheの「Webアプリケーションマネージャ」をアクセスすることができます。

enter image description here

しかし、私は、誰が助けるか、それは非常に高く評価されるだろう正しい方向に私を指すことができれば、私は404

enter image description here

を取得していますブラウザからアクセスしてみてください。

私はウェブテンプレート用にタイムリーフを使用していますので、index.htmlファイルはresources/templatesフォルダにあり、私はそこにコントローラマッピングをしています。また、私はタイムリーフを使用する前にこの問題を抱えていました。すべてがコンテナにないローカル環境で動作しています。

+0

あなたの 'new_test'アプリケーションはルートフォルダに' index.html'を持っていますか? Tomcatのエラーは、そうでないことを示しています... – nwinkler

+0

@nwinklerはい、そこにindex.htmlを持っていて、私もそれをリクエストしようとすると404を取得します。 –

答えて

2

OK男は最終的に問題をこれを考え出したことは、私は私のポンポンでいたTomcatの依存関係を

スコープはコンテナがそれを好きしていないよう提供さに設定されていても
<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-tomcat</artifactId> 
    <scope>provided</scope> 
</dependency> 

、私が削除した行うことでした依存関係はすべて期待どおりに機能しています。

enter image description here

0

new_test.warにはindex.htmファイルがありません。正しい場所のルートフォルダにあることを確認してください。 7zipなどのツールを使用してwar/archiveを開き、ファイルの場所を確認します。

+0

申し訳ありませんが、Webテンプレートにタイムリーフを使用しているので、index.htmlはresources/templatesフォルダにあります。 –

関連する問題