操作
バグ #596
未完了【子チケット】VPSrootにデプロイ
ステータス:
新規
優先度:
急いで
担当者:
-
開始日:
2025-06-18
期日:
進捗率:
0%
予定工数:
説明
目的¶
結合テスト完了後、VPSroot環境への本番デプロイを実施
作業内容¶
1. VPS環境構築¶
サーバー基盤準備¶
-
VPSスペック確認・調整
- CPU: 4コア以上
- RAM: 8GB以上
- Storage: SSD 100GB以上
- Ubuntu 22.04 LTS セットアップ
- ファイアウォール設定(ufw)
- SSH公開鍵認証設定
- 監視ユーザー作成・sudo権限設定
必要ソフトウェアインストール¶
- Docker & Docker Compose インストール
- Nginx インストール・設定
- PostgreSQL 15+ & PostGIS インストール
- Redis インストール・設定
- Node.js 18+ インストール(PM2管理)
- SSL証明書設定(Let's Encrypt)
2. アプリケーションデプロイ準備¶
環境変数設定¶
-
本番環境用環境変数ファイル作成
NODE_ENV=production DATABASE_URL=postgresql://... JWT_SECRET=... GOOGLE_MAPS_API_KEY=... LINE_CHANNEL_SECRET=... SMTP_HOST=... REDIS_URL=...
- 機密情報暗号化・管理
- 環境変数バリデーション
データベースセットアップ¶
- PostgreSQL データベース作成
- PostGIS 拡張機能有効化
- Prisma マイグレーション実行
- 本番用シードデータ投入
- バックアップ設定(cron)
3. Docker化・コンテナデプロイ¶
Dockerfileベースデプロイ¶
- マルチステージビルド設定
- 本番用イメージ作成
- docker-compose.prod.yml 設定
- コンテナヘルスチェック設定
- ログローテーション設定
コンテナ構成¶
services:
web: # React MPA (Nginx)
api: # Node.js API
line-bot: # LINE Bot Service
postgresql: # Database
redis: # Cache
nginx: # Reverse Proxy
4. Nginx リバースプロキシ設定¶
HTTP/HTTPS設定¶
- SSL証明書設定
- HTTP → HTTPS リダイレクト
- セキュリティヘッダー設定
- gzip圧縮設定
- 静的ファイル配信最適化
ロードバランシング・キャッシュ¶
- API サーバーへのプロキシ設定
- 静的ファイルキャッシュ設定
- レート制限設定
- アクセスログ設定
5. セキュリティ設定¶
サーバーセキュリティ¶
- ファイアウォール設定(22, 80, 443のみ開放)
- fail2ban設定(SSH, HTTP攻撃対策)
- 自動セキュリティアップデート設定
- 不要サービス停止
アプリケーションセキュリティ¶
- CORS設定(本番ドメインのみ許可)
- CSP設定
- レート制限設定
- セキュリティヘッダー設定
6. 監視・ログ設定¶
システム監視¶
- Prometheus + Grafana セットアップ
- Node Exporter設定
- アプリケーションメトリクス収集
- アラート設定(Slack通知)
ログ管理¶
- ログ集約設定(rsyslog)
- アプリケーションログ設定
- ログローテーション設定
- ログ監視・分析設定
7. パフォーマンス最適化¶
CDN設定¶
- 静的ファイルCDN配信設定
- 画像最適化設定
- キャッシュポリシー設定
データベース最適化¶
- PostgreSQL設定チューニング
- インデックス最適化確認
- コネクションプール設定
- スロークエリ監視設定
8. バックアップ・復旧設定¶
自動バックアップ¶
- データベース日次バックアップ(cron)
- アプリケーションファイルバックアップ
- 設定ファイルバックアップ
- バックアップ世代管理(7日保持)
災害復旧準備¶
- 復旧手順書作成
- 復旧テスト実施
- 緊急連絡先設定
9. デプロイ実行¶
段階的デプロイ¶
- ステージング環境デプロイ
- ステージング環境動作確認
- 本番環境デプロイ
- 本番環境動作確認
ヘルスチェック¶
- アプリケーション起動確認
- API エンドポイント疎通確認
- データベース接続確認
- 外部サービス連携確認
10. 運用移行準備¶
運用ドキュメント作成¶
- サーバー運用手順書
- トラブルシューティングガイド
- 緊急時対応手順書
- 定期メンテナンス手順書
運用体制移行¶
- 監視体制確立
- サポート体制確立
- 運用担当者への引き継ぎ
成果物¶
- 本番稼働システム
- デプロイ手順書
- 運用手順書
- 監視・アラート設定
- バックアップ・復旧設定
- セキュリティ設定ドキュメント
技術要件¶
- 可用性: 99.9%以上
- レスポンス時間: API < 1秒、ページ < 3秒
- 同時接続数: 1000ユーザー対応
- SSL/TLS: TLS 1.3対応
- セキュリティ: 最新のベストプラクティス適用
前提条件¶
- チケット#595(結合試験)完了・品質基準クリア
- VPSアカウント・ドメイン準備完了
期間¶
2週間
優先度¶
最高
操作