Apache Tomcatは、ApacheSoftwareFoundationによって開発されたオープンソースのJavaサーブレット実装です。 Tomcatは、Javaサーブレットの他に、JavaServer Pages(JSP)、Java Expression Language、JavaWebSocketなどの他のいくつかのJavaサーバーテクノロジーを実装しています。 Tomcatは、HTTP / 2、JSSE用のOpenSSL、およびTLS仮想ホスティングをサポートするJavaアプリケーション用のHTTPWebサーバーを提供します。
このチュートリアルでは、CentOS7サーバーにApacheTomcat 8.5をインストールして構成する方法と、Tomcatの前提条件の1つであるCentOSサーバーにJavaをインストールして構成する方法を示します。
前提条件
- CentOS7-64ビットを搭載したサーバー
- 2 GB以上のRAM(推奨)
- サーバーのルート権限
ステップ1-Java(JREおよびJDK)をインストールします
このステップでは、CentOSリポジトリからJavaJREとJDKをインストールします。 yumコマンドを使用してサーバーにJava1.8.11をインストールします。
次のコマンドを実行して、yumを使用してCentOSリポジトリからJavaJREおよびJDKをインストールします。
yum -y install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64
しばらく時間がかかります。インストールが完了するまでお待ちください。
次に、以下のコマンドを使用してJavaのバージョンを確認する必要があります。
java -version
以下のような結果が表示されるはずです:
openjdk version "1.8.0_111"
OpenJDK Runtime Environment (build 1.8.0_111-b15)
OpenJDK 64-Bit Server VM (build 25.111-b15, mixed mode)
最初のステップでは、Javaをインストールしました。次に、CentOSサーバーでJAVA_HOME環境変数を構成して、Javaアプリケーションが正しいJavaバージョンを検出できるようにする必要があります。また、TomcatではJAVA_HOME環境を適切にセットアップする必要があるため、構成する必要があります。
JAVA_HOME環境を構成する前に、Javaディレクトリーがどこにあるかを知る必要があります。以下のコマンドでJavaディレクトリを確認してください:
sudo update-alternatives --config java
Javaディレクトリ="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64/jre "
次に、vimで環境ファイルを編集します:
vim /etc/environment
以下の構成を追加して、JAVA_HOME環境変数を追加します。
JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64/jre"
/ etc/environmentファイルを保存してvimを終了します。
次に、.bash_profileファイルを編集し、JAVA_HOME変数も追加します。
vim ~/.bash_profile
ファイルの最後に、以下の構成を貼り付けます。
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.111-1.b15.el7_2.x86_64/jre
export PATH=$JAVA_HOME/bin:$PATH
ファイルを保存してから、bash_profileファイルをリロードします。
source ~/.bash_profile
エラーがないことを確認します。最後に、JAVA_HOME環境変数を確認します。
echo $JAVA_HOME
Javaパスディレクトリが表示されます。
このステップでは、ユーザーtomcat(最初に作成する必要があります)の下にApacheTomcatをインストールします。
tomcatという名前のユーザーとグループを作成します:
groupadd tomcat
useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
注 :
-s / bin /false=シェルアクセスを無効にする
-gtomcat=新しいユーザーをグループtomcatに割り当てます
-d/opt /tomcat=ユーザーのホームディレクトリを定義します
次に、/ optディレクトリに移動し、wgetコマンドを使用してtomcatをダウンロードします。
cd /opt/>
wget http://mirror.wanxp.id/apache/tomcat/tomcat-8/v8.5.6/bin/apache-tomcat-8.5.6.tar.gz
Tomcatを抽出し、「apache-tomcat-8.5.6」ディレクトリにあるすべてのファイルとディレクトリを「tomcat」ディレクトリに移動します。
tar -xzvf apache-tomcat-8.5.6.tar.gz
mv apache-tomcat-8.5.6/* tomcat/
次に、tomcatディレクトリの所有者をtomcatユーザーとグループに変更します。
chown -hR tomcat:tomcat tomcat
手順3では、Tomcatをインストールして構成します。このステップでは、簡単なテストを実行して、エラーがないことを確認します。
tomcat / binディレクトリに移動し、コマンド「startup.sh」を実行してApacheTomcatをテストします。
cd /opt/tomcat/bin/
./startup.sh
結果が「Tomcat開始」であることを確認してください。
Tomcatは現在ポート8080を使用しています。netstatコマンドを使用して、サーバーで開いているポートを確認してください。
netstat -plntu
または、Webブラウザを使用してポート8080(私の場合は192.168.1.120:8080)でサーバーのIPアドレスにアクセスします。 ApacheTomcatのデフォルトページが表示されます。
次に、Apache Tomcatを停止します。これは、Tomcatを最終構成のsystemdサービスファイルで実行するためです。 tomcatディレクトリがtomcatユーザーとグループによって所有されていることを確認してください。
cd /opt/tomcat/bin/
./shutdown.sh
chown -hR tomcat:tomcat /opt/tomcat/
このチュートリアルでは、サービスの開始と停止を簡単にするために、systemdサービスファイルを使用してtomcatユーザーとしてApacheTomcatを実行します。したがって、次のステップは「tomcat.service」ファイルを作成することです。
systemdシステムディレクトリに移動し、新しいファイル「tomcat.service」を作成します。
cd /etc/systemd/system/
vim tomcat.service
以下に設定を貼り付けます:
[Unit]
Description=Apache Tomcat 8 Servlet Container
After=syslog.target network.target
[Service]
User=tomcat
Group=tomcat
Type=forking
Environment=CATALINA_PID=/opt/tomcat/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
ファイルを保存してvimを終了します。
systemdデーモンをリロードし、起動時にApacheTomcatサービスを開始して追加します。
systemctl daemon-reload
systemctl start tomcat
systemctl enable tomcat
次に、開いているポート8080をチェックして、Tomcatが実行されていることを確認します。
netstat -plntu
そして、Tomcatのステータスをチェックし、サービスがアクティブであることを確認します。
systemctl status tomcat
このステップでは、ApacheTomcatのユーザーを構成します。 Tomcatがインストールされ、デフォルトでポート8080で実行されているため、Webブラウザーでアクセスできますが、サイトマネージャーダッシュボードにはまだアクセスできません。 Tomcatユーザーを有効にして構成するには、ファイル「tomcat-users.xml」を編集します。
tomcat構成ディレクトリに移動し、vimを使用してtomcat-users.xmlファイルを編集します。
cd /opt/tomcat/conf/
vim tomcat-users.xml
行43の下に新しい行を作成し、以下に構成を貼り付けます。
<role rolename="manager-gui"/>
<user username="admin" password="password" roles="manager-gui,admin-gui"/>
ファイルを保存してvimを終了します。
次に、managerディレクトリに移動し、context.xmlファイルを編集します。
cd /opt/tomcat/webapps/manager/META-INF/
vim context.xml
19行目と20行目をコメントアウトします。
<Context antiResourceLocking="false" privileged="true" >
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
</Context>
ファイルを保存してvimを終了します。
host-managerディレクトリに移動し、context.xmlファイルを再度編集します。
cd /opt/tomcat/webapps/host-manager/META-INF/
vim context.xml
19行目と20行目をもう一度コメントアウトします。
<Context antiResourceLocking="false" privileged="true" >
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
</Context>
ファイルを保存して終了し、tomcatを再起動します。
systemctl restart tomcat
CentOS 7には、firewalldという名前のデフォルトのファイアウォールツールがあります。 iptablesインターフェースを置き換え、Netfilterカーネルコードに接続します。
このステップでは、firewalldサービスを開始し、ポート8080を開いて、ネットワークの外部からApacheTomcatサーバーにアクセスできるようにします。
Firewalldサービスを開始し、systemctlコマンドを使用して起動時に開始するように追加します。
systemctl start firewalld
systemctl enable firewalld
次に、firewall-cmdコマンドを使用してapache tomcatポート8080をファイアウォールに追加し、firewalldサービスをリロードします。
firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --reload
ファイアウォールですべてのサービスが利用可能であることを確認し、ApacheTomcatポート8080が開いていることを確認します。
firewall-cmd --list-ports
firewall-cmd --list-services
Apache Tomcatポート8080はネットワークの外部からアクセス可能であり、sshポートもデフォルトで開いています。
Webブラウザーを開き、ポート8080でサーバーIPを入力します。ApacheTomcatのデフォルトページが表示されます。
http://192.168.1.120:8080
以下のURLでマネージャーダッシュボードに移動します:
http://192.168.1.120:8080/manager/html
管理者ユーザー名'adminを入力します 'パスワード付き'mypassword '、ステップ5で作成した構成。
次に、以下のURLを使用してホストマネージャーダッシュボードに移動します。
http://192.168.1.120:8080/host-manager/html
手順5で設定した管理者ユーザーとパスワードを入力すると、Tomcat仮想ホストマネージャーが表示されます。
ApacheTomcat8.5がCentOS7サーバーにインストールされています。
- http://tomcat.apache.org/