Разверните два файла war в разные порты из одной папки webapps - PullRequest
0 голосов
/ 04 февраля 2020

У меня есть два приложения, которые необходимо запустить на разных портах:

  • Service.war на порту 8080
  • Client.war на порту 8300

Оба они должны быть распакованы в

  • $ CATALINA_HOME / webapps / Service
  • $ CATALINA_HOME / webapps / Client

(порты и места распаковки являются ограничениями специфики скриптов сборки, я не могу на это повлиять)

Ниже приведена конфигурация, которая у меня есть:

<Service name="Catalina8300">
    <Connector port="8300" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"/>

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
    <Engine name="Catalina8300" defaultHost="localhost">
        <Realm className="org.apache.catalina.realm.LockOutRealm">
            <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                   resourceName="UserDatabase"/>
        </Realm>
        <Host name="localhost" appBase="webapps"
              unpackWARs="true" autoDeploy="true">
            <Context docBase="Client" path="/Client"/>
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="localhost_access_log" suffix=".txt"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b"/>
        </Host>
    </Engine>
</Service>

  <Service name="Catalina">
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443"/>

    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
    <Engine name="Catalina" defaultHost="localhost">
        <Realm className="org.apache.catalina.realm.LockOutRealm">
            <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
                   resourceName="UserDatabase"/>
        </Realm>
        <Host name="localhost" appBase="webapps"
              unpackWARs="true" autoDeploy="true">
            <Context docBase="Service" path="/Service"/>
            <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                   prefix="localhost_access_log" suffix=".txt"
                   pattern="%h %l %u %t &quot;%r&quot; %s %b"/>
        </Host>
    </Engine>
</Service>

После запуска tomcat, Client и Service приложения развертываются на порт 8080.

Есть ли способ настроить две службы в server.xml для работы на портах 8080 и 8300, не имея двух разных папок webapps, как я видел в большинстве примеров?

Каким должно быть базовое приложение и хосты в сервисах в таком случае?

...