メインコンテンツまでスキップ

クイックスタート

Strapi は柔軟性が高く、手早く結果を見たい場合も、プロダクトを深く掘り下げたい場合もカバーできます。このチュートリアルではゼロからプロジェクトとコンテンツ構造を作る流れに沿い、その後 Strapi Cloud にデプロイしてクラウド側からデータを追加します。

Strapi を試す 3 つの方法

次のいずれかを選んでください。

  • Strapi の ホストされたデモ では、コンテンツマネージャーをすぐ試し、コンテンツ編集の流れを学べます。デモは本番モードのため、コンテンツタイプビルダーは仕様により無効です。

  • Strapi バックエンド、Next.js フロント、サンプルデータ一式を含む完成形を試すなら、LaunchPad をローカルにインストールしてください。

  • 一から学びたい場合は、このクイックスタートに従ってください。

Prerequisites

Strapi をインストールする前に、次の要件をコンピューターに用意してください。

  • Node.js: Active LTS または Maintenance LTS のみサポート(現状 v20、v22、v24)。奇数バージョンの「current」リリース(例: v23、v25)はサポートされません。
  • 好みの Node.js パッケージマネージャー:
  • Python(SQLite データベースを使う場合)

Strapi Cloud にデプロイするには、git のインストールと GitHub アカウントも必要です。

パート A: Strapi で新しいプロジェクトを作成する​

ターミナルでコマンドを実行してマシン上に新しい Strapi プロジェクトを作り、最初のローカル管理者ユーザーを登録します。

折りたたみを開いて、手順を読み進めてください。

ステップ 1: インストールスクリプトを実行し Strapi Cloud アカウントを作成する

ステップ 1: インストールスクリプトを実行し Strapi Cloud アカウントを作成する​

  1. ターミナルで次のコマンドを実行します。

    npx create-strapi@latest my-strapi-project
  2. ターミナルにログインまたはサインアップの案内が出ます。完了すると、GrowthCMS Growth プランには Live Preview、Releases、Content History が含まれます。 の 30 日間トライアルがプロジェクトに自動適用されます。このチュートリアルでは、ターミナルで Login/Sign up が選ばれていることを確認するか、矢印キーで選んで Enter を押します。

    Info

    ログインをスキップした場合、パート C と D は実施できませんが、ローカルでの試用は引き続き可能です。

  3. 開いたブラウザのタブで、確認コードがターミナルと同じであることを確認し、Confirm をクリックします。

  4. 同じタブで Continue with GitHub をクリックします。ブラウザで GitHub にログインしていない場合は、ログインページへリダイレクトされることがあります。

  5. ログイン後、ブラウザに "Congratulations, you're all set!" と表示されたらタブを閉じ、ターミナルに戻って問題ありません。

    ログインの GIFログインの GIF
  6. ターミナルでいくつか質問されます。すべて既定値でよければ Enter を押します。

    ターミナルでの質問と回答

ターミナルに表示されるとおり、プロジェクトがローカルでビルドされています。

Info
  • プロジェクトフォルダには、ローカルの Strapi を Strapi のサーバーと紐づける .strapi-cloud.json が含まれます。
  • その他のインストール方法は インストールドキュメント を参照してください。
ステップ 2: 最初のローカル管理者ユーザーを登録する

ステップ 2: 最初のローカル管理者ユーザーを登録する​

インストールが終わったらサーバーを起動します。ターミナルに次を入力または貼り付けます。

cd my-strapi-project && npm run develop

ブラウザで新しいタブが自動的に開きます。

Tip

my-strapi-project フォルダにいる限り、Strapi サーバーを再度起動するときは npm run develop を実行すれば十分です。

フォームに入力してアカウントを作成すると、この Strapi アプリケーションの最初の管理者ユーザーになります。

管理パネル にアクセスできます。

管理パネル: ダッシュボードのスクリーンショット管理パネル: ダッシュボードのスクリーンショット
おつかれさまでした!

新しい Strapi プロジェクトができました。単独で Strapi を試したり コンテンツマネージャー を開いたりしてもよいですし、下のパート B に進んでも構いません。

パート B: コンテンツタイプビルダーでコンテンツ構造を作る​

インストールスクリプトは空のプロジェクトを作成しました。ここから小さなレストラン一覧用の構造を作ります。

ローカルの Strapi の管理パネルは http://localhost:1337/admin で動きます。コンテンツの作成・更新の多くはここで行います。

まずコンテンツの構造を定義します。これは開発モードでのみ可能で、ローカル作成のプロジェクトでは既定で開発モードです。

Tip

サーバーがまだ起動していない場合は、ターミナルで my-strapi-project に cd して npm run develop(または yarn develop)を実行します。

TypeScript プロジェクトなど、ビルドが必要な場合は develop の前に npm run build または yarn build が必要になることがあります。

コンテンツタイプビルダーでコンテンツ構造を定義します。空のプロジェクトでは、ここから始めます。

ステップ 1: 「Restaurant」コレクションタイプを作成する

ステップ 1: 「Restaurant」コレクションタイプを作成する​

レストランが複数件になる想定なので、「Restaurant」コレクションタイプを作成し、新規エントリーで表示するフィールドを定義します。

  1. 管理パネル左のメインナビから Content-Type Builder を開きます。
  2. Collection types の横にある プラスをクリックします。
  3. Display name に Restaurant と入力し、Continue をクリックします。
  4. Add new field をクリックし、Text フィールドを選びます。
  5. Name フィールドに Name と入力します。
  6. Advanced Settings タブで Required field と Unique field にチェックを入れます。
  7. Add another field をクリックします。
  8. 一覧から Rich text (Blocks) を選びます。
  9. Name に Description と入力し、Finish をクリックします。
  10. 最後に Save をクリックし、Strapi の再起動を待ちます。
GIF: Content-type Builder で Restaurant コレクションタイプを作成GIF: Content-type Builder で Restaurant コレクションタイプを作成

再起動後、ナビの Content Manager > Collection types に "Restaurant" が表示されます。最初のコンテンツタイプが完成しました。続けてもう 1 つ作ってみましょう。


ステップ 2: 「Category」コレクションタイプを作成する

ステップ 2: 「Category」コレクションタイプを作成する​

カテゴリがあればレストラン一覧が整理しやすくなります。「Category」コレクションタイプを作成します。

  1. Content-type Builder を開きます。
  2. Collection types の横の をクリックします。
  3. Display name に Category と入力し、Continue をクリックします。
  4. Add new field をクリックし、Text フィールドを選びます。
  5. Name に Name と入力します。
  6. Advanced Settings で Required field と Unique field にチェックを入れます。
  7. Add another field をクリックします。
  8. Relation フィールドを選びます。
  9. 中央で many-to-many を表すアイコンを選びます icon many-to-many。
  10. 右側の Category ドロップダウンから Restaurant を選び、表示が Categories has and belongs to many Restaurants になるようにします。
管理パネル: リレーションのスクリーンショット管理パネル: リレーションのスクリーンショット
  1. Finish、続いて Save をクリックし、Strapi の再起動を待ちます。
おつかれさまでした!

Strapi プロジェクトの基本的なコンテンツ構造ができました。コンテンツタイプビルダー をさらに試すか、パート C・D で Strapi Cloud に進み、実際のコンテンツを追加してください。

Tip

手動での作成に加え、Figma のプロトタイプやローカルファイルのインポート、Strapi AI GrowthThis feature is available with a Growth plan. に自然言語で指示して生成する方法もあります。試してみてください。

️ パート C: Strapi Cloud にデプロイする​

ローカルで最初の Strapi プロジェクトが動いているので、公開環境へ載せましょう。最も手軽なのは Strapi Cloud で、1 コマンドでデプロイできます。🚀

Strapi Cloud へ無料デプロイするには、ターミナルで次を行います。

  1. ローカル Strapi が起動している場合は Ctrl-C で停止します。

  2. Strapi プロジェクトのフォルダにいることを確認します(必要なら cd my-strapi-project)。次のコマンドを実行します。

    yarn strapi deploy
  3. ターミナルの質問に答えます。プロジェクト名(Enter で既定)、推奨の Node.js バージョン、近いリージョンを選びます。

    Strapi Cloud のターミナルでの質問と回答

しばらくするとローカルプロジェクトが Strapi Cloud 上にホストされます。🚀

完了すると、ターミナルに https://cloud.strapi.io/projects で始まるリンクが表示されます。クリックするかアドレスバーに貼り付けて開きます。

Strapi Cloud のダッシュボードに、作成した my-strapi-project が表示されます。右上の Visit app をクリックして、デプロイした Strapi にアクセスします。

Strapi Cloud アプリを開く GIFStrapi Cloud アプリを開く GIF
おつかれさまでした!

プロジェクトが Strapi Cloud 上にあり、オンラインからアクセスできます。詳しくは Strapi Cloud ドキュメント を読むか、パート D でオンラインの管理パネルにログインし、データを追加してください。

Tip

コンテンツタイプビルダーでフィールドやタイプを追加したら、再度 deploy コマンドを実行して Strapi Cloud に反映すると、数分でホスト側も更新されます。🪄

パート D: コンテンツマネージャーで Strapi Cloud プロジェクトにコンテンツを追加する​

「Restaurant」と「Category」の 2 つのコレクションタイプを用意し Strapi Cloud にデプロイしたので、クラウド上でエントリーを作成してコンテンツを追加します。

ステップ 1: 新しい Strapi Cloud プロジェクトの管理パネルにログインする

ステップ 1: 新しい Strapi Cloud プロジェクトの管理パネルにログインする​

Strapi Cloud プロジェクトができたので、ログインします。

  1. Strapi Cloud ダッシュボード で my-strapi-project をクリックします。
  2. Visit app をクリックします。
  3. 開いたページのフォームに入力し、この Strapi Cloud プロジェクトの最初の管理者ユーザーを作成します。

ログインできたら、ここからデータを追加します。

ユーザーと Strapi Cloud プロジェクトに関する補足:
補足: ローカルユーザーと Strapi Cloud のユーザーは別です

Strapi Cloud プロジェクトとローカルプロジェクトではデータベースが別です。ローカルから Strapi Cloud へデータは自動では引き継がれず、ローカルで作ったユーザーも含まれます。そのため、初めて Strapi Cloud プロジェクトにログインするときは、新しい管理者アカウントの作成を求められます。

ヒント: Strapi Cloud プロジェクトの管理パネルに直接アクセスする

Strapi Cloud の各プロジェクトは https://my-strapi-project-name.strapiapp.com のような URL でアクセスできます。オンラインの管理パネルは URL の末尾に /admin を付けます(例: https://my-strapi-project-name.strapiapp.com/admin)。URL はダッシュボードでも確認でき、プロジェクト名と Visit app からも開けます。

ステップ 2: 「Restaurant」コレクションタイプのエントリーを作成する

ステップ 2: 「Restaurant」コレクションタイプのエントリーを作成する​

  1. ナビの Content Manager > Collection types - Restaurant を開きます。
  2. Create new entry をクリックします。
  3. Name に好きな地元のレストラン名を入力します。例: Biscotte Restaurant。
  4. Description に短い説明を書きます。例文を使う場合は Welcome to Biscotte restaurant! Restaurant Biscotte offers a cuisine based on fresh, quality products, often local, organic when possible, and always produced by passionate producers. でも構いません。
  5. Save をクリックします。
スクリーンショット: コンテンツマネージャーの Biscotte Restaurantスクリーンショット: コンテンツマネージャーの Biscotte Restaurant

レストランが Content Manager の Collection types - Restaurant 一覧に表示されます。


ステップ 3: カテゴリを追加する

ステップ 3: カテゴリを追加する​

Content Manager > Collection types - Category でカテゴリを 2 件作成します。

  1. Create new entry をクリックします。
  2. Name に French Food と入力します。
  3. Save をクリックします。
  4. Collection types - Category に戻り、再度 Create new entry をクリックします。
  5. Name に Brunch と入力し、Save をクリックします。
GIF: カテゴリを追加GIF: カテゴリを追加

「French Food」と「Brunch」が Content Manager の Collection types - Category に下書きとして表示されます。

レストランにカテゴリを紐づけます。

  1. Content Manager > Collection types - Restaurant から "Biscotte Restaurant" を開きます。
  2. ページ下部の Categories ドロップダウンで "French Food" を選び、上にスクロールして Save をクリックします。
ステップ 4: ロールと権限を設定する

ステップ 4: ロールと権限を設定する​

レストランとカテゴリを追加したので、API から公開取得できるようにします。

  1. メインナビ下部の Settings をクリックします。
  2. Users & Permissions Plugin から Roles を選びます。
  3. Public ロールを開きます。
  4. Permissions まで下にスクロールします。
  5. Permissions タブで Restaurant を開きます。
  6. find と findOne にチェックを入れます。
  7. Category でも同様に find と findOne にチェックを入れます。
  8. ページ上部の Save をクリックします。
スクリーンショット: Users & Permissions の Public ロールスクリーンショット: Users & Permissions の Public ロール
ステップ 5: コンテンツを公開する

ステップ 5: コンテンツを公開する​

作成したコンテンツは既定で下書きです。カテゴリとレストランを公開します。

まず Content Manager > Collection types - Category を開きます。

  1. "Brunch" エントリーを開きます。
  2. 次の画面で Publish をクリックします。

一覧に戻り、"French Food" でも同様に Publish します。

最後に Content Manager > Collection types - Restaurant で "Biscotte Restaurant" を開き、Publish します。

GIF: コンテンツを公開GIF: コンテンツを公開
ステップ 6: API を使う

ステップ 6: API を使う​

コンテンツを作成し API で取得できる状態にしました。Strapi Cloud プロジェクトの URL に /api/restaurants を付けたパス(例: https://beautiful-first-strapi-project.strapiapp.com/api/restaurants)にアクセスすると、レストラン一覧が返るはずです。

試してみてください。レスポンスは次の例に近い形になります 👇。

クリックして API レスポンスの例を表示
{
"data": [
{
"id": 3,
"documentId": "wf7m1n3g8g22yr5k50hsryhk",
"Name": "Biscotte Restaurant",
"Description": [
{
"type": "paragraph",
"children": [
{
"type": "text",
"text": "Welcome to Biscotte restaurant! Restaurant Biscotte offers a cuisine based on fresh, quality products, often local, organic when possible, and always produced by passionate producers."
}
]
}
],
"createdAt": "2024-09-10T12:49:32.350Z",
"updatedAt": "2024-09-10T13:14:18.275Z",
"publishedAt": "2024-09-10T13:14:18.280Z",
"locale": null
}
],
"meta": {
"pagination": {
"page": 1,
"pageSize": 25,
"pageCount": 1,
"total": 1
}
}
}
おつかれさまでした!

コンテンツを作成・公開し、API から取得する権限も設定できました。引き続きコンテンツを充実させてください。

ヒント: ローカルと Strapi Cloud 間でデータを移すには

Strapi Cloud とローカルではデータベースが別のため、データは自動では同期されません。データ管理 を使ってプロジェクト間で転送できます。

次にやること​

Strapi でコンテンツを作成・公開する基本がわかったら、次のトピックを掘り下げてみてください。

Strapi の REST API でコンテンツを取得する方法を学ぶ
機能 カテゴリで Strapi の機能を読む
Strapi Cloud ドキュメント でクラウドプロジェクトについて学ぶ
上級向けに Strapi バックエンドのカスタマイズ や 管理パネルのカスタマイズ に進む