📝
Airline Ticket Reservation System (ATRS) を動かす
めあて
技術的な学習などで練習用の素材としてatrsのXMLConfig-JSP版が動作する環境をローカルに構築
前提
WSL(Debian)環境でasdfとdockerが導入済の状態から始めます。
手順
JDKのインストール
bash
asdf install java microsoft-21.0.7
asdf set -u java microsoft-21.0.7
asdf install maven 3.9.11
asdf set -u maven 3.9.11
PostgreSQLのセットアップ
docker compose用のyamlを作成します。
postgresql-for-atrs.yaml
services:
service_postgres:
image: postgres:16.9
container_name: container_postgres
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: atrs
ports:
- "5432:5432"
volumes:
- volume_postgres:/var/lib/postgresql/data
service_pgadmin:
image: dpage/pgadmin4:latest
container_name: container_pgadmin
ports:
- 8888:80
volumes:
- volume_pgadmin:/var/lib/pgadmin
environment:
PGADMIN_DEFAULT_EMAIL: a@a.com
PGADMIN_DEFAULT_PASSWORD: password
depends_on:
- service_postgres
volumes:
volume_postgres:
name: vpg
volume_pgadmin:
name: vpga
dockerコマンドで起動
bash
docker compose -f postgresql-for-atrs.yaml up -d
[http://localhost:8888/]にアクセスしてpgAdminからDBが動作していることを確認します。

atrsの実行
bash
git clone https://github.com/terasolunaorg/atrs.git
cd atrs/XMLConfig-JSP/atrs
mvn sql:execute -f atrs-initdb/pom.xml
mvn clean install
mvn cargo:run -pl atrs-web
[http://localhost:8080/atrs/]にアクセスして画面が表示されれば成功です。
エラーになった
report用(?)のディレクトリが/atrsというルートからのpathとなっているため、権限の問題でディレクトリ作成失敗となったので、propertiesファイルでpathを変更し、ディレクトリを作成して再実行することで解決しました。
bash
vi atrs-env/src/main/resources/META-INF/spring/atrs-infra.properties
# report.dirのpathを適当に変更
mvn clean install
mvn cargo:run -pl atrs-web
Discussion