1.

ANACONDA NAVIGATORの起動方法

編集
この記事の要点
  • Tomcat の起動・停止方法(OS 別)
  • Linux/Mac: $CATALINA_HOME/bin/startup.sh / shutdown.sh
  • Windows: startup.bat / shutdown.bat(または Windows サービス)
  • フォアグラウンド実行: catalina.sh run(ログがそのまま表示)
  • systemd サービス: sudo systemctl start tomcat

 

Tomcat の起動・停止スクリプト

Tomcat の bin/ フォルダに以下のスクリプトがあります:

スクリプト役割
startup.sh / .batバックグラウンドで起動
shutdown.sh / .bat停止
catalina.sh / .bat runフォアグラウンド起動(ログが端末に出る)
catalina.sh / .bat startバックグラウンド起動(startup.sh と同等)
catalina.sh / .bat stop停止
catalina.sh / .bat configtest設定ファイル検証
version.sh / .batバージョン情報表示

Linux / Mac での起動

# 環境変数設定
$ export CATALINA_HOME=/opt/tomcat
$ export JAVA_HOME=/usr/lib/jvm/java-17

# 起動 (バックグラウンド)
$ $CATALINA_HOME/bin/startup.sh
Using CATALINA_BASE:   /opt/tomcat
Using CATALINA_HOME:   /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME:        /usr/lib/jvm/java-17
Using CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Tomcat started.

# 起動確認
$ curl -I http://localhost:8080/

# 停止
$ $CATALINA_HOME/bin/shutdown.sh

# フォアグラウンド起動(Ctrl+C で停止)
$ $CATALINA_HOME/bin/catalina.sh run

Windows での起動

REM 環境変数設定 (永続化したい場合)
> setx CATALINA_HOME "C:\apache-tomcat-9.0.71"
> setx JAVA_HOME "C:\Program Files\Eclipse Adoptium\jdk-17"

REM 起動 (新しいコンソールウィンドウが開く)
> %CATALINA_HOME%\bin\startup.bat

REM 停止
> %CATALINA_HOME%\bin\shutdown.bat

REM フォアグラウンド (現在のウィンドウでログ表示)
> %CATALINA_HOME%\bin\catalina.bat run

Windows サービスとして起動

REM サービスインストール (管理者権限のコマンドプロンプト)
> %CATALINA_HOME%\bin\service.bat install Tomcat9

REM サービス開始
> sc start Tomcat9
REM または
> net start Tomcat9

REM 停止
> sc stop Tomcat9
> net stop Tomcat9

REM サービス削除
> %CATALINA_HOME%\bin\service.bat remove Tomcat9

systemd サービス(Linux 推奨)

サービスファイル作成

# /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment="JAVA_HOME=/usr/lib/jvm/java-17"
Environment="CATALINA_PID=/opt/tomcat/tomcat.pid"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_OPTS=-Xms1g -Xmx2g -server -XX:+UseG1GC"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

User=tomcat
Group=tomcat
RestartSec=10
Restart=on-failure

[Install]
WantedBy=multi-user.target
# 有効化
$ sudo systemctl daemon-reload
$ sudo systemctl enable tomcat
$ sudo systemctl start tomcat

# 状態確認
$ sudo systemctl status tomcat
● tomcat.service - Apache Tomcat Web Application Container
   Loaded: loaded (/etc/systemd/system/tomcat.service; enabled)
   Active: active (running) since ...

# ログ確認
$ sudo journalctl -u tomcat -f

# 停止 / 再起動
$ sudo systemctl stop tomcat
$ sudo systemctl restart tomcat

JVM オプションのカスタマイズ

bin/setenv.sh(または setenv.bat)を新規作成して以下を記述:

#!/bin/sh
# bin/setenv.sh
export CATALINA_OPTS="-server \
    -Xms1g -Xmx4g \
    -XX:MetaspaceSize=128m \
    -XX:MaxMetaspaceSize=512m \
    -XX:+UseG1GC \
    -XX:+HeapDumpOnOutOfMemoryError \
    -XX:HeapDumpPath=/var/log/tomcat-heapdump.hprof \
    -Djava.net.preferIPv4Stack=true \
    -Dfile.encoding=UTF-8"

export JAVA_OPTS="$JAVA_OPTS -Duser.timezone=Asia/Tokyo"

ポート変更

デフォルトの 8080 を変更したい場合は conf/server.xml:


起動しないときのチェックリスト

  1. 環境変数: JAVA_HOME / CATALINA_HOME 確認
  2. ポート競合: 別プロセスが 8080 を使用していないか
  3. ログ確認: logs/catalina.out / catalina.YYYY-MM-DD.log
  4. ファイル権限: tomcat ユーザがログ・work ディレクトリに書き込めるか
  5. conf/server.xml の構文: XML パースエラーがないか
  6. webapps 内に壊れた WAR がないか: 展開失敗で起動が止まる
  7. メモリ: -Xmx が大きすぎて OS にメモリがないと起動失敗

関連記事

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. 起動方法
  2. 仮想環境の作成