フォーラム

GroupSession

フォーラム
GroupSessionについての自由な情報交換の場としてご利用ください

GroupSessionフォーラム:投稿一覧

 
フォーラム:00_インストール・設定
docker-composeによるTomcat9.0+Groupsessionが動作しない
[ 7580 ] docker-composeによるTomcat9.0+Groupsessionが動作しない

古いサーバーですが、CUIであれば活用できそうなので、
gsession.warをダウンロードし、docker-composeで立ち上げたところ、
下記エラーでlocalhostからも見ることができません。
ちなみに、Tomcat:latestでは404 Not Foundで見ることができないため、
バージョンを指定して行いました。
docker-composeで立ち上げ成功した方おられましたら、
アドバイスいただけると幸いです。
(これが成功したら、Groupsessionの立ち上げが大分楽になりますね)

warファイルがコンテナ内にも展開されたこと、
他のコンテナは正しく動作することは確認済みです。

【サーバー】 FUJITSU PRIMERGY RX300 S5
【OS】 Ubuntu Server 20.04LTS
【Docker Version】 20.10.7
【docker-compose.yaml】
version: '3'

services:

app:
container_name: tomcat
image: tomcat:9.0
ports:
- 8080:8080
volumes:
- ./webapps:/usr/local/tomcat/webapps

投稿者7b_old_servers
最新書き込み2021/11/01 14:58:46
[ 7581 ] Re: docker-composeによるTomcat9.0+Groupsessionが動作しない

【エラーメッセージ】
HTTP Status 400 Bad Request
_____________________________________________________________________________________________________________________

Type Exception Report

Message Invalid character found in the request target [/gsession/"./common/cmn001.do" ]. The valid characters are defined
in RFC 7230 and RFC 3986

Description The server cannot or will not process the request due to something that is perceived to be a client error
(e.g., malformed request syntax, invalid request message framing, or deceptive request routing).

Exception
java.lang.IllegalArgumentException: Invalid character found in the request target [/gsession/"./common/cmn001.do" ]. The valid characters are defined in RFC 7230 and RFC 3986
org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:502)
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:269)
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:895)
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1722)
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.base/java.lang.Thread.run(Thread.java:829)

Note The full stack trace of the root cause is available in the server logs.
_____________________________________________________________________________________________________________________

Apache Tomcat/9.0.54

投稿者7b-old-servers
最新書き込み2021/11/01 14:59:34
[ 7582 ] Re: docker-composeによるTomcat9.0+Groupsessionが動作しない

dockerなしのDebian環境ですが、apt由来のtomcat9下で動いています。
試しに、docker環境を作って確認してみます。

投稿者デイル
最新書き込み2021/11/02 11:36:12
[ 7583 ] Re: docker-composeによるTomcat9.0+Groupsessionが動作しない

確認のために手順を再現してみました。

Ubuntu Server 20.4の素の環境に、aptからtomcat9をインストール
5.1.1のgsession.warを/var/lib/tomcat9/webapps/に配置
systemctlでtomcat9.serviceをrestart
ブラウザから http://192.168.xxx.xxx:8080/gsession/ にアクセス可能
(IPアドレスはサーバに設定したもの)
この状態で、OSの起動時からアクセス可能です。

ここにapt install docker-composeし、ホームにdocker-compose.ymlを作成。
sudo systemctl stop tomcat9.service してから sudo docker-compose upしてみましたが
warは展開されないもののtomcat自体は応答していました。

おっしゃっているエラーの再現には何か足りないのだと思いますが、
dockerには不慣れなせいか違いがよくわかっていません。

投稿者デイル
最新書き込み2021/11/02 14:15:44
[ 7590 ] Re: docker-composeによるTomcat9.0+Groupsessionが動作しない

検証ありがとうございます。
何が原因か分かりませんが、404 Not Foundにエラーが変わりました。
上記エラーは、nginxとの関係で出たのかもしれませんが、記憶が曖昧です…
確かに、warファイルは展開どころかコンテナ内にコピーもされていません。
引き続き、対処法考えたいと思います。

投稿者7b-old-servers
最新書き込み2021/11/11 11:58:34
[ 7591 ] Re: docker-composeによるTomcat9.0+Groupsessionが動作しない

volumeでマウント指定したにもかかわらず、warがコピーされませんでした。
強制的にコピーすると動きました。
docker cp gsession.war tomcat:/usr/local/tomcat/webapps/
ただし、コンテナ削除するとデータも消えてしまうということなので、
根本的な解決方法が必要です。
一応、dockerでも構成可能ということが分かりましたので、
もう少しdockerの勉強をして再挑戦します。

投稿者7b-old-servers
最新書き込み2021/11/11 17:09:17
スレッドURLhttps://groupsession.jp/wbs/bulletin/bbs080.do?bbs010forumSid=1&threadSid=2759
 


TOP