1. Java 8 ランタイム環境のセットアップ
JDK 8 を手動でインストールし、システム全体で利用可能な状態にします。
sudo mkdir -p /opt/java
sudo tar -xzf jdk-8u31-linux-x64.tar.gz -C /opt/java/
sudo ln -sf /opt/java/jdk1.8.0_31 /opt/java/latest
環境変数を永続化するため、
/etc/environment を編集します(
profile より推奨):
sudo tee -a /etc/environment <<'EOF'
JAVA_HOME="/opt/java/latest"
PATH="$PATH:$JAVA_HOME/bin"
CLASSPATH=".:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar"
EOF
設定を適用後、検証します:
source /etc/environment
java -version # 出力例: java version "1.8.0_31"
万一コマンドが認識されない場合は、代替実装を登録します:
sudo update-alternatives --install /usr/bin/java java /opt/java/latest/bin/java 200 \
--slave /usr/bin/javac javac /opt/java/latest/bin/javac
sudo update-alternatives --config java
2. Apache Tomcat 7 の導入とサービス化
Tomcat を非ルートユーザーでも起動可能かつ再起動時に自動起動するよう設定します。
sudo tar -xzf apache-tomcat-7.0.81.tar.gz -C /opt/
sudo ln -sf /opt/apache-tomcat-7.0.81 /opt/tomcat
/etc/environment に追加:
CATALINA_HOME="/opt/tomcat"
Tomcat を systemd サービスとして登録(Ubuntu 16.04+ 向け):
sudo tee /etc/systemd/system/tomcat.service <<'EOF'
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=forking
Environment=JAVA_HOME=/opt/java/latest
Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment=CATALINA_BASE=/opt/tomcat
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
User=ubuntu
Group=ubuntu
Restart=always
[Install]
WantedBy=multi-user.target
EOF
サービスを有効化・起動:
sudo systemctl daemon-reload
sudo systemctl enable tomcat
sudo systemctl start tomcat
ファイアウォールでポートを開きます:
sudo ufw allow 8080
ブラウザで
http://<サーバーIP>:8080 にアクセスし、Tomcat の Welcome ページが表示されることを確認します。
3. MySQL の準備とデータベース初期化
Ubuntu の MySQL(通常は MariaDB ではなく Oracle MySQL)で大文字小文字を無視したテーブル名処理を有効化します:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld] セクション内に以下を追加:
lower_case_table_names = 1
その後、MySQL を再起動:
sudo systemctl restart mysql
WCP 専用のデータベースとユーザーを作成します:
mysql -u root -p <<'EOF'
CREATE DATABASE wcp_core CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wcp_app'@'localhost' IDENTIFIED BY 'SecurePass123!';
GRANT ALL PRIVILEGES ON wcp_core.* TO 'wcp_app'@'localhost';
FLUSH PRIVILEGES;
EOF
4. WCP アプリケーションの展開と構成
WCP の配布パッケージ(例:
WCP.free.4.0.7.base.Setup.tar.gz)を展開し、Web アプリケーションを配置します:
sudo tar -xzf WCP.free.4.0.7.base.Setup.tar.gz -C /tmp/
sudo cp -r /tmp/WCP.free.4.0.7.base.Setup/webs/ROOT /opt/tomcat/webapps/
sudo cp -r /tmp/WCP.free.4.0.7.base.Setup/wda /opt/tomcat/webapps/
SQL スキーマをインポート:
mysql -u wcp_app -pSecurePass123! wcp_core < /tmp/WCP.free.4.0.7.base.Setup/sql/wcp.free.4.0.6.sql
接続設定を更新します(パスは展開先に合わせて調整):
sudo nano /opt/tomcat/webapps/ROOT/WEB-INF/classes/jdbc.properties
内容を以下のように修正:
jdbc.driverClassName=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/wcp_core?useSSL=false&serverTimezone=UTC&characterEncoding=utf8mb4
jdbc.username=wcp_app
jdbc.password=SecurePass123!
Tomcat を再起動して反映:
sudo systemctl restart tomcat
数分待ってから、
http://<サーバーIP>:8080 へアクセスし、WCP のログイン画面が正しく表示されることを確認します。