일지

[배포]TOMCAT 배포(docBase 설정)/ 컨테이너 여러 개 추가하기

닉닉눅 2023. 9. 20. 15:03
728x90
반응형

1. TOMCAT 배포(docBase 설정)

server.xml.239020는 이전 설정을 백업한 것

conf 디렉토리까지 오면 server.xml이 보입니다.

vi server.xml 을 하면 많은 내용이 보입니다. 아래의 내용은 톰캣의 사용 포트와 프로토콜, 인코딩 등은 설정하는 곳으로 기본 8080 이지만 다른 포트를 사용하고 싶을 경우 port 값을 변경합니다.

<Connector port="8080" protocol="HTTP/1.1"    --> 8080 -> 9090
               connectionTimeout="20000"
               redirectPort="8443"
               maxParameterCount="1000" URIEncoding="UTF-8"
               />

 

아래는 프로젝트 위치를 설정해주는 곳입니다.

docBase는 프로젝트가 들어있는 경로를 적어주고, 아래처럼 절대경로로 해도 되고 hostname의 appBase을 설정하여 appBase부터 상대경로로 적어도 됩니다.

 <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">
        <Context path="/" docBase="/data/test/web" reloadable="false" />

 

이제 설정을 마치고 톰캣을 실행, 재실행하면 설정한 프로젝트의 화면이 나옵니다.

 

포트변경 후에는 아래 명령어를 사용하여 방화벽에 해당 포트를 열어줍니다.

sudo firewall-cmd --permanent --zone=public --add-port=변경포트/tcp
sudo firewall-cmd --reload

 

2. TOMCAT 컨테이너 여러 개 추가하기

docBASE와 같이 server.xml에서 설정합니다.

server.xml에서 컨테이너는 Service 태크로 구분되어 아래와 같이 컨테이너를 추가할 수 있습니다. 

<Service name="Catalina1">


    <Connector port="9090" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="19090"
               maxParameterCount="1000" URIEncoding="UTF-8"
               />
    
    <Engine name="Catalina1" 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 path="/" docBase="/data/test/web1" reloadable="false" />
        
        <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="Catalina2">


    <Connector port="9091" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="19091"
               maxParameterCount="1000" URIEncoding="UTF-8"
               />
    
    <Engine name="Catalina2" 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 path="/" docBase="/data/test/web2" reloadable="false" />
        
        <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>
</Server>

 

728x90
반응형