ワンライン インストール (推奨)
概要
PlantPulse プラットフォームを 1 行のコマンドで最速インストールする方法です。ダウンロード サーバからインストール スクリプトを取得し、OS セットアップ、Docker インストール、ファイアウォール設定、Docker Compose スタック起動まで自動的に実行します。
どんなときに使う? 標準環境 (Oracle Linux 8 / RHEL 9 / Ubuntu 20.04+ / Amazon Linux 2023) でデフォルト設定のまま高速インストールしたいときに適しています。詳細な設定を段階的に検証する必要がある本番環境では、Docker インストール ページの手動インストール手順をお勧めします。
インストール モード選択
インストール前に、どの構成でインストールするかを先に決めてください。
| 構成 | サーバ台数 | 推奨シーン | ガイド |
|---|---|---|---|
| シングルボックス (FULL) — デフォルト | 1 台 (推奨 256GB、最小 128GB) | 標準構成。このページの手順のままで可 | このページ |
| 2 ノード分離 (DATALAKE/APP) | 2 台 (64GB + 48GB) | シングル サーバのメモリが不足、またはデータ負荷とコンソール分離が必要な場合 | 2 ノード分離インストール |
| 閉域網 (Airgap) | — | インターネット未接続環境 | Docker インストールの閉域網セクション |
以下の手順は シングルボックス (FULL) を基準としています。環境変数なしで実行すれば FULL でインストールされます。
対応環境
| OS | バージョン |
|---|---|
| Oracle Linux | 8.x |
| RHEL / Rocky Linux | 8.x, 9.x |
| Ubuntu | 20.04+ (20 / 22 / 24) |
| Amazon Linux | 2, 2023 |
事前準備
- インターネット接続可能なサーバ (ダウンロード サーバ
product.kopens.ioへのアクセス必須) root権限- 最小 16 vCPU / 64GB RAM / 200GB ディスク (デフォルト 32 vCPU / 128GB RAM・本番推奨 256GB RAM)
閉域網 (Airgap) 環境ではワンライン インストールは使用できません。Docker インストール ページの閉域網インストール手順をご参照ください。
インストール実行
サーバに SSH で接続後、以下のコマンドを実行します。
sudo -i
curl -fsSL https://product.kopens.io/plantpulse-platform/install.sh | bash
スクリプトが自動で実行する処理:
- OS 自動検出 (RHEL/Rocky/Oracle 8·9、Ubuntu 20+、Amazon Linux)
- Docker Engine + Compose v2 インストールおよびデーモン設定 (data-root)
- カーネル / リソース チューニング (
limits.conf、sysctl.conf、chrony.conf、tmpfiles.d) - SELinux permissive 切り替えおよび swap 無効化
- ファイアウォール ポート自動オープン — パブリック ポート (80/443/7443/4949/4950) およびプライベートネット制限ポート
- サービス認証情報サイドカー (
/etc/kopens/plantpulse-platform.env) 作成 - コンテナ レジストリ (
docker.kopens.io) ログイン - Docker ネットワーク / ボリューム作成後、compose スタック起動
インストール完了時、9 つのコンテナが定義され、そのうち8 つが常時動作します — インフラ (plantpulse-datalake)、アプリ 6 つ (plantpulse-server-web·plantpulse-batch-web·plantpulse-warehouse·plantpulse-plugin-opcua-server·plantpulse-plugin-aasx-server·plantpulse-ha)、エッジ (plantpulse-proxy)。残り 1 つ (plantpulse-certs) は TLS 資材を焼いて終了するワンショットなので Exited (0) が正常です。
詳細な構成は Docker インストール — インストール構成 をご参照ください。
インストール スクリプトはスタック起動後、準備完了までポーリングします。プロセス起動自体は 3~5 分 (JVM ウォームアップ) ですが、クリーン インストールは Cassandra スキーマ マイグレーションと安定化のため 全コンポーネントが安定するまで 15~18 分かかります。再起動はスキーマがすでに存在するため、大幅に高速です。
インストール オプション
# Docker가 이미 설치된 경우 OS 셋업 단계 생략
curl -fsSL https://product.kopens.io/plantpulse-platform/install.sh | bash -s -- --skip-os
| オプション | 効果 |
|---|---|
--skip-os | OS セットアップおよび Docker インストールをスキップ (Docker がすでにインストール済みの場合) |
注: ワンライン インストールはレジストリ認証が自動で構成されるため、別途
docker loginは不要です。ファイアウォール スキップ (SKIP_FW=1)、レジストリ ログイン スキップ (SKIP_LOGIN=1)、Docker data-root パス変更 (DOCKER_DATA_DIR、デフォルト/data1/docker-data) は、ノードにダウンロード済みのbin/install.shを直接実行する際に環境変数として指定します → Docker インストール
インストール確認
インストール完了後、以下のコマンドで状態を確認します。
cd /opt/kopens/plantpulse-platform-docker/bin
./status.sh # 0 = 정상 / 2 = 비정상
./ops-check.sh
curl -kfsS https://<server-ip>:4950/api/health | jq # "status":"OK" 또는 "WARN" 이면 정상
docker ps # 여덟 개가 (healthy), plantpulse-certs 는 Exited (0)
docker ps に plantpulse-platform がないからといって失敗ではありませんその名前の単一コンテナ構成は廃棄されました。コンテナ名は上記 9 つで、古いランブックの docker logs plantpulse-platform は動作しません。ログは ./logs.sh で確認してください。
すべての項目が正常であれば、ブラウザで Web コンソールにアクセスします。
https://[서버IP] # 웹 콘솔 (80/443, plantpulse-proxy 가 받습니다)
https://[서버IP]:7443 # 관리 UI
https://[서버IP]:4950 # 모니터 UI
- デフォルト管理者アカウント: admin / admin123!
- ログイン後は必ずパスワードを変更してください。 → 初期パスワード
インストール後の環境変数調整
ワンライン インストールはホストを調査し、自動的にリソース値を計算するため、ほとんどのサーバでは調整の必要がありません。 ロケールのように自動的には決定できない値のみ調整します。
cd /opt/kopens/plantpulse-platform-docker/bin
vi env.sh
./restart.sh
よく調整する項目:
| 変数 | 説明 | デフォルト |
|---|---|---|
PP_LANG | プラットフォーム ロケール (ko / en) | en — 韓国語運用の場合は ko |
PP_TZ | プラットフォーム タイムゾーン | Asia/Seoul |
DOCKER_PP_CPUS | コンテナに割り当てる vCPU 数 | nproc 結果 (自動) |
DOCKER_PP_MEMORY | メモリ上限 | ホスト RAM の 90% (自動) |
DOCKER_DATALAKE_MEMORY | データレイク メモリ上限 | 80G、ホストが小さい場合は RAM の 90% |
DOCKER_PP_DATA_DISK_NAME | データ ディスク名 | 自動逆追跡 (失敗時は sda) |
DOCKER_PP_EXTERNAL_IP | NAT 環境の外部 advertise IP | 空白値 — NAT の背後でなければ空白のままにします |
DOCKER_PP_EXTERNAL_IP は安易に埋めないでくださいこの値は TLS 証明書の SAN リストに含まれます。無効な IP を入力すると、証明書が1 枚も生成されずスタックが起動できません。
多言語ボックス: デフォルト ロケールは
enです。韓国語環境ではPP_LANG=koに変更してから./restart.shで適用します。ただし、Cassandra 時系列データが KST epoch で投入されるため、韓国語運用時は必ずAsia/Seoulを維持する必要があります。
全環境変数リストは 環境変数リファレンス をご参照ください。
よく使う運用コマンド
cd /opt/kopens/plantpulse-platform-docker/bin
./preflight.sh # 설치 전 비파괴 사전 점검
./up.sh # 기동 — 준비될 때까지 대기 (0 = 준비 완료)
./down.sh # 정지 (상태 보존)
./restart.sh # graceful 재시작 (drain + 준비 대기)
./status.sh # 서비스 / health / 볼륨 요약 (0=정상 / 2=비정상)
./logs.sh [서비스] # 로그 보기 (1회 출력, -f 로 따라가기). 인자가 없으면 전체, 목록은 --list
./shell.sh [서비스] # 컨테이너 bash 진입 (인자 없으면 데이터레이크)
./ops-check.sh # 운영 health + 최근 critical log 점검
./update.sh # 이미지 갱신 (pull + recreate + 실패 시 rollback)
./remove.sh # 컨테이너 제거 (볼륨은 보존)
./doctor.sh # 장애 진단 tarball 생성
すべての動詞は --help をサポートします。旧名称 (stack-run.sh·stack-stop.sh·stack-bash.sh·stack-update.sh·stack-remove.sh) もそのまま動作します。
トラブルシューティング
ダウンロード スクリプト実行失敗
# 다운로드 서버 접근 가능 여부 확인
curl -fsSL https://product.kopens.io/plantpulse-platform/install.sh -o /tmp/install.sh
ls -al /tmp/install.sh
# 회사 방화벽 / 프록시로 차단된 경우 네트워크 관리자에게 도메인 허용 요청:
# product.kopens.io, docker.kopens.io
コンテナが healthy 状態に移行しない
どのコンテナに問題があるかをまず特定します。
cd /opt/kopens/plantpulse-platform-docker/bin
./status.sh # 어떤 서비스가 비정상인가
./logs.sh --list # 볼 수 있는 서비스 목록
./logs.sh plantpulse-server-web -n 200 # 그 컨테이너의 로그
./doctor.sh # 진단 tarball 생성 후 기술 지원팀에 전달 (모든 컨테이너를 담습니다)
Cassandra スキーマ マイグレーション失敗または /data1/pp-data 権限問題の可能性が高いです。詳細な手順は Docker インストール — スタックが起動しない場合 にあります。
追加のご質問
その他の問題は、Docker インストール ページのトラブルシューティング セクションをまずご確認ください。解決しない場合は webmaster@kopens.com までお問い合わせください。