ServBayでNuxt.jsプロジェクトを作成&運用する
Nuxt.jsとは?
Nuxt.jsは人気のVue.jsフレームワークをベースにしたオープンソースフレームワークで、モダンで高性能なWebアプリケーション構築に特化しています。様々な複雑な設定を抽象化することで、開発者がビジネスロジックに集中できるような設計になっています。特にサーバーサイドレンダリング(SSR)による動的なWebサイトや、静的サイト生成(SSG)によるパフォーマンス重視のWebサイト開発に強く、SEOにも優れたWebサービスやアプリの構築に最適です。
Nuxt.jsの主な特徴と利点
- サーバーサイドレンダリング(SSR):サーバー上でVueページを事前にレンダリングすることで、ファーストビューの表示速度を向上し、ユーザー体験とSEO対策(検索エンジンインデックス強化)に効果的です。
- 静的サイト生成(SSG):ビルド時に完全な静的HTMLファイルを生成します。高いパフォーマンス、簡単なデプロイ、サーバー運用不要で、ブログやドキュメントサイトなど更新頻度の低いWebサイトに最適です。
- 自動コード分割:ルーティングに応じてJavaScriptコードを自動分割し、必要なコードのみロードできるため、アプリのパフォーマンスが大幅向上します。
- ファイルベースルーティング:
pages
ディレクトリ配下に.vue
ファイルを作成すると自動的にルート定義され、ルーティング管理が非常にシンプルです。 - モジュラー構造:豊富なモジュールエコシステムで、AxiosやPWA、CMS統合などさまざまな機能や外部サービスとの連携が容易です。
- 規約による簡略設定:ディレクトリ構造や命名規則に従うことで、複雑な設定作業が減り、素早い開発が実現します。
- 開発体験の最適化:ホットリロード(HMR)やエラー報告機能などにより、効率的な開発環境を提供します。
これらの機能により、Nuxt.jsは複雑・高性能・SEO対応Webアプリケーションの効率的かつ簡単な開発を実現します。
ServBayでNuxt.jsプロジェクトを構築・運用する基本手順
本ガイドでは、ServBayのパワフルなローカル開発環境、特にNode.jsパッケージやWebサイト管理機能を活用してNuxt.jsプロジェクトの作成から設定・運用まで解説します。開発モード(リバースプロキシ使用)と本番モード(静的ファイルサービス使用)の2通りをご紹介します。
必要条件
開始前に以下の準備が必要です:
- ServBayアプリのインストールが完了していること
- ServBayでNode.jsパッケージがインストール&有効化されていること(「パッケージ」タブからインストール状況を確認・操作可能)
- Node.js、npm(またはYarn/pnpm)、基本的なコマンド操作に慣れていること
- (推奨)VS Codeなどのコードエディタが導入済であること
Nuxt.jsプロジェクトの作成
create-nuxt-app
を使った高速なNuxt.jsプロジェクト初期化方法を説明します。
ターミナルからServBayのWebサイトルートディレクトリへ移動
ServBayのデフォルトWebサイトルートはローカル開発の推奨ディレクトリです。ターミナルを起動し、以下コマンドで移動してください:
macOS:
bashcd /Applications/ServBay/www
1Windows:
bashcd C:\ServBay\www
1Nuxt.js新規プロジェクトの初期化
npx create-nuxt-app
コマンドでservbay-nuxt-app
というプロジェクトを作成します。npx
はnpm 5.2以降に標準搭載されているため、グローバルインストール不要で即実行できます。bashnpx create-nuxt-app servbay-nuxt-app
1コマンド実行後は対話式で各種設定が行えます。必要に応じて選択肢を選んでください。サンプル設定例:
bash? Project name: servbay-nuxt-app ? Programming language: JavaScript ? Package manager: Npm # 推奨はNpmまたはYarn ? UI framework: None # 必要に応じて選択 ? Nuxt.js modules: Axios # 必要なら選択 ? Linting tools: ESLint # 必要なら選択 ? Testing framework: None # 必要なら選択 ? Rendering mode: Universal (SSR / SSG) # SSRとSSG両対応の“Universal”を推奨 ? Deployment target: Server (Node.js hosting) # ローカル開発やNode.js本番運用に最適 ? Development tools: jsconfig.json (Recommended for VS Code) # 必要に応じて選択
1
2
3
4
5
6
7
8
9
10依存パッケージのインストール
作成したプロジェクトディレクトリに移動し、選択したパッケージ管理ツールで依存パッケージをインストールします:
bashcd servbay-nuxt-app npm install # Yarnの場合:yarn install # pnpmの場合:pnpm install
1
2
3
4インストールが完了するまでしばらく待ちます。
プロジェクトの表示内容を変更する
動作検証をしやすくするためトップページを編集し、シンプルな表示に変更します。
pages/index.vue
ファイルを開くプロジェクト配下の
pages/index.vue
をコードエディタで開きます。ファイル内容の編集
以下内容に変更し、画面に「Hello ServBay!」が表示されるよう設定します:
html<template> <div> <h1>Hello ServBay!</h1> </div> </template> <script> export default { name: 'IndexPage' } </script> <style scoped> div { text-align: center; margin-top: 50px; font-family: sans-serif; } h1 { color: #333; } </style>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22style
タグにscoped
属性を追加し、スタイルがこのコンポーネントにだけ適用されるようにして、表示も見やすく調整しています。
ServBayで開発モードを動かす
Nuxt.js開発サーバーは通常指定ポートで稼働しますが、ServBayの独自ドメイン・SSL証明書・80/443ポートの統合アクセスを活用するため、ServBayのWebサイト機能でリバースプロキシ設定を行います。
Nuxt.js開発サーバーの起動
プロジェクトルートで以下コマンドからNuxt.js開発サーバーを起動します(例としてポート
8585
を指定、他の空きポートでもOK)。macOS:
bashcd /Applications/ServBay/www/servbay-nuxt-app npm run dev -- --port 8585 # Yarnの場合:yarn dev --port 8585 # pnpmの場合:pnpm run dev --port 8585
1
2
3
4Windows:
bashcd C:\ServBay\www\servbay-nuxt-app npm run dev -- --port 8585 # Yarnの場合:yarn dev --port 8585 # pnpmの場合:pnpm run dev --port 8585
1
2
3
4サーバーが起動すると通常
http://localhost:8585
でアクセス可能です。サーバー稼働中はこのターミナルウィンドウを閉じないでください。ServBayでWebサイト(リバースプロキシ)設定を行う
ServBayコントロールパネルを開き「Webサイト」タブへ移動。左下の
+
ボタンで新規Webサイト設定を追加します:- 名前 (Name):分かりやすい名前(例:
Nuxt.js Dev Site (Proxy)
) - ドメイン (Domain):ブラウザアクセス時の独自ドメイン(例:
nuxt-dev.servbay.demo
。.servbay.demo
は公式推奨サフィックスです) - Webサイトタイプ (Website Type):
リバースプロキシ
- IPアドレス (IP Address):
127.0.0.1
(ローカルループバックアドレス) - ポート (Port):先ほどNuxt.jsサーバー起動時に指定した
8585
設定完了後、「追加」または「保存」ボタンを押すとServBayが自動で反映・有効化します。
ServBayでNode.js開発Webサイト(リバースプロキシ使用)の詳細手順についてはNode.js開発Webサイト追加方法をご参照ください。
- 名前 (Name):分かりやすい名前(例:
開発モードWebサイトへアクセスする
Webブラウザから、ServBayで設定したドメイン(例:
https://nuxt-dev.servbay.demo
)へアクセスします。ServBayのリバースプロキシを使うことで、独自ドメイン・HTTPS・80/443ポートを統一的に利用できるほか、ServBayが自動でSSL証明書(ServBay User CA発行)を取得・設定してくれます。ご利用のPCがUser CAを信頼していれば、開発環境でもHTTPSアクセスやService Worker動作検証、TLS依存機能の安全なテストが可能です。
本番ビルド&静的サービス運用
Nuxt.jsプロジェクト完成後、本番環境へデプロイしたり、ローカルで本番シミュレーションを行う場合は、静的ファイルをビルド・出力します。Universalモード&静的サイト化なら、nuxt generate
(またはnpm run export
)で静的コンテンツ生成が可能です。
本番用ビルド&静的ファイル生成
プロジェクトルートでコマンド入力。
npm run build
でコードビルド、npm run export
で静的HTMLの生成(通常dist
フォルダが出力先)です。macOS:
bashcd /Applications/ServBay/www/servbay-nuxt-app npm run build npm run export # Yarnの場合:yarn build && yarn export # pnpmの場合:pnpm build && pnpm run export
1
2
3
4
5Windows:
bashcd C:\ServBay\www\servbay-nuxt-app npm run build npm run export # Yarnの場合:yarn build && yarn export # pnpmの場合:pnpm build && pnpm run export
1
2
3
4
5全工程が終わると、
dist
ディレクトリが作成され、静的ファイル一式が格納されます。ServBayでWebサイト(静的ファイルサービス)設定
ServBayコントロールパネルを開き「Webサイト」タブへ。左下の
+
ボタンから新規Webサイト設定を追加、- 名前 (Name):分かりやすい名称(例:
Nuxt.js Prod Site (Static)
) - ドメイン (Domain):本番アクセス用の独自ドメイン(例:
nuxt-prod.servbay.demo
) - Webサイトタイプ (Website Type):
静的
- Webサイトルート (Website Root):生成された静的ファイルのディレクトリパス
- macOS:
/Applications/ServBay/www/servbay-nuxt-app/dist
- Windows:
C:\ServBay\www\servbay-nuxt-app\dist
- macOS:
設定が終わったら「追加」または「保存」ボタンで反映します。ServBayが自動でサーバー設定を更新・有効化します。
- 名前 (Name):分かりやすい名称(例:
本番モードWebサイトへアクセス
ブラウザから、本番用に設定したドメイン(例:
https://nuxt-prod.servbay.demo
)にアクセスします。ServBayの高速Webサーバー(CaddyまたはNginx。設定により異なる)から、
dist
フォルダ内の静的ファイルが直ちに配信されます。静的ファイル配信は最速・最適化された方法であり、SSL証明書(無償)・独自ドメインも同時サポートされます。
まとめ
ServBayを活用することで、Nuxt.jsプロジェクトのローカル開発からプレビューまでをシンプルに管理できます。Node.jsパッケージで開発サーバーを起動し、Webサイト機能のリバースプロキシでHTTPS&独自ドメインによる開発&デバッグが可能です。開発完了後は本番ビルド・静的ファイル生成 → 静的サイトタイプで高速ローカルプレビューまで一気通貫。ServBayの利便性・高機能性がフロントエンド開発ワークフローを大幅に効率化します。本ガイドがServBayでNuxt.js開発をより快適・効率的に行う一助となれば幸いです!