最終更新日: 2025年11月6日

テンプレート説明

Strapiは、REST APIおよびGraphQL APIを提供するオープンソースヘッドレスCMSです。コンテンツタイプの柔軟な定義、直感的な管理パネル、およびAPI自動生成機能を通じて、開発者がAPIベースのコンテンツ管理システムを効率的に構築できます。

本テンプレートはインストール完了後もStrapiサービスは停止状態を維持します。これにより、管理者アカウント作成前の不正アクセスを防止し、セキュアな初期セットアップを実現します。

メモ

Strapiはヘッドレスアーキテクチャを採用しており、フロントエンドとバックエンドを完全に分離します。RESTまたはGraphQL APIを通じて、React、Vue.js、Next.jsなど任意のフロントエンドフレームワークと連携可能です。

仕様

対応OSイメージ

Ubuntu 24.04 LTS

主要ソフトウェア

ソフトウェア名 バージョン ライセンス 用途
Strapi latest MIT License ヘッドレスCMS(コンテンツ管理・API提供)
Node.js 22 MIT License JavaScriptランタイム環境
PostgreSQL 16 PostgreSQL License リレーショナルデータベース
Nginx Latest BSD-2-Clause Webサーバー・リバースプロキシ
PM2 Latest AGPL-3.0 Node.jsプロセスマネージャー
Yarn Latest BSD-2-Clause パッケージマネージャー
Let’s Encrypt Latest MPL 2.0 SSL/TLS証明書(オプション)

スタートアップスクリプト情報

項目 説明
アプリケーション利用ポート 1337/tcp (HTTP), 443/tcp (HTTPS)
インストールディレクトリ /opt/strapi/my-strapi-app
管理スクリプト /root/strapi-*.sh
初期状態 サービス停止中(セキュリティのため)
プロセス管理 PM2による自動起動・再起動機能

重要

Strapiは初回アクセス時に管理者アカウントを作成する仕様です。不正な第三者による管理者登録を防ぐため、テンプレート作成直後はサービスを停止状態に設定しています。

その他

最小システム要件

  • CPU: 最小1コア、推奨2コア以上
  • メモリ: 最小2GB、推奨4GB以上
  • ディスク容量: 20GB以上(SSD推奨)
  • ネットワーク: パブリックIPアドレス

メモ

Strapiのビルドプロセスは大量のメモリを消費します。インストールスクリプトは一時的に4GBのスワップ領域を作成してビルドを安定化させ、完了後に自動的に削除します。

利用手順

メモ

スタートアップスクリプトにてアプリケーションのインストールが完了するまで数分かかります。
インストール完了後、rootディレクトリに「strapi-info.txt」というファイルが作成されますのでご確認ください。
ファイルが存在しない場合、作成されるまでしばらくお待ちください。

Step 0: セキュリティグループについて

ConoHa VPS(Ver.3.0)ではサーバー毎にIPアドレスまたはポートでトラフィックを制御するセキュリティグループ(仮想ファイアウォール)が設定されます。
本テンプレートをご利用の場合は、予め利用するポートの通信許可設定が必要です。
詳細はセキュリティグループを参照してください。

重要

セキュリティ上の理由により、テンプレート作成直後はStrapiサービスが停止状態です。以下の手順に従って安全にサービスを起動し、設定を行ってください。

Step 1: VPSへの接続

ConoHa VPSのコントロールパネルからVPSの情報を確認し、SSH で接続します。

鍵認証でのSSH接続コマンド例
# ssh -i 秘密鍵ファイルのパス root@VPSのグローバルIPアドレス

メモ

インストール完了までには数分程度かかります。スタートアップスクリプトの実行状況は、SSH接続後に以下のコマンドで確認できます:

# tail -f /var/log/strapi-install.log

Step 2: サービスの起動

PM2を使用してStrapiサービスを起動します。

# sudo -u strapi pm2 start strapi

サービスの起動状態を確認します。

# sudo -u strapi pm2 status

メモ

PM2は自動再起動機能を持ち、システム起動時にStrapiを自動的に開始します。サービスが「online」ステータスになっていることを確認してください。

Step 3: 初期セットアップ

3.1 ドメインの確認

インストール情報ファイルで設定されたドメインを確認します。

# cat /root/strapi-info.txt

3.2 管理者アカウントの作成

Webブラウザで以下のURLにアクセスし、管理者アカウントを作成します。

https://<ドメイン名>/admin

セキュリティ重要

初回アクセス時に表示される登録フォームで管理者アカウントを作成します。この操作は一度のみ可能です。必ず安全な環境から実施し、強固なパスワードを設定してください。アカウント作成後は他のユーザーによる管理者登録はできなくなります。

Step 4: HTTPS設定(推奨)

本番環境では、Let’s Encryptを使用した正式なSSL証明書の導入を強く推奨します。下記コマンドの「[email protected]」は自身のメールアドレスに置き換えてください。

4.1 Let’s Encrypt証明書の取得

# /root/strapi-letsencrypt.sh -e [email protected]

4.2 自動更新の確認

Let’s Encrypt証明書は自動的に更新されます。更新スケジュールを確認するには:

# systemctl list-timers | grep certbot

メモ

Let’s Encrypt証明書を取得するには、ドメイン名が正しくVPSのIPアドレスに向いている必要があります。DNSレコードの設定を事前に完了させてください。

Step 5: ドメイン設定(オプション)

カスタムドメインに変更する場合は、以下のスクリプトを使用します。下記コマンドの「your-domain.com」は自身の独自ドメインに置き換えてください。

# /root/strapi-change-domain.sh -d your-domain.com

このスクリプトは以下の処理を自動的に実行します:

  • ホスト名の変更
  • Nginx設定の更新
  • 自己署名証明書の再生成
  • サービスの再起動

Step 6: システム診断

システムの動作状態を確認します。

# /root/strapi-diagnose.sh

このスクリプトは以下の情報を表示します:

  • Nginxサービスのステータス
  • PM2によるStrapiプロセス状態
  • 使用中のポート情報
  • データベース接続状態
  • ディスク使用量
  • メモリ使用状況
  • アプリケーションログ

管理スクリプト一覧

スクリプト名 機能 使用例
strapi-letsencrypt.sh Let’s Encrypt証明書の取得・設定 # /root/strapi-letsencrypt.sh -e [email protected]
strapi-change-domain.sh ドメイン名の変更 # /root/strapi-change-domain.sh -d new-domain.com
strapi-diagnose.sh システム診断・状態確認 # /root/strapi-diagnose.sh

PM2によるプロセス管理

Strapiの起動・停止・再起動は、PM2を通じて実行します。

操作 コマンド 説明
ステータス確認 # sudo -u strapi pm2 status Strapiプロセスの状態を表示
起動 # sudo -u strapi pm2 start strapi Strapiサービスを起動
停止 # sudo -u strapi pm2 stop strapi Strapiサービスを停止
再起動 # sudo -u strapi pm2 restart strapi Strapiサービスを再起動
ログ表示 # sudo -u strapi pm2 logs strapi リアルタイムログを表示

ファイアウォール設定

以下のポートがufwファイアウォールで開放されています。

ポート番号 プロトコル 用途 必須/オプション
22 TCP SSH 任意
80 TCP HTTP 必須
443 TCP HTTPS 推奨

メモ

ポート1337はStrapiアプリケーションが内部的に使用しますが、Nginxがリバースプロキシとして機能するため外部に直接公開されません。

データベース情報

データベース認証情報は以下のファイルに記録されています。

# cat /root/strapi-info.txt

PostgreSQLデータベースに直接アクセスする場合:

# sudo -u postgres psql -d strapi

重要なファイルパス

項目 パス
Strapiアプリケーション /opt/strapi/my-strapi-app
環境変数設定 /opt/strapi/my-strapi-app/.env
PM2設定 /opt/strapi/ecosystem.config.js
アプリケーションログ /opt/strapi/logs/
Nginx設定 /etc/nginx/sites-available/strapi.conf
SSL証明書 /etc/strapi/ssl/
インストールログ /var/log/strapi-install.log

アプリケーションの具体的な利用方法につきましては、サービス開発元やサービス提供元の公式サイト、Wikiなどで最新情報をご確認ください。

サイト名 URL 説明
Strapi公式サイト https://strapi.io/ プロダクト情報・最新ニュース
Strapi公式ドキュメント https://docs.strapi.io/ 技術ドキュメント・チュートリアル
StrapiのGitHubリポジトリ https://github.com/strapi/strapi ソースコード・イシュートラッカー