プロジェクト

全般

プロフィール

バグ #377

未完了

設定テンプレートと動的生成スクリプトの開発

Redmine Admin さんが13日前に追加. 13日前に更新.

ステータス:
解決
優先度:
高め
担当者:
-
開始日:
2025-06-08
期日:
進捗率:

0%

予定工数:

説明

目的

Nginx SNIとDocker Compose設定標準化の第一段階として、設定テンプレートと動的生成スクリプトを開発する。

実施内容

  1. Nginx設定の標準テンプレート開発

    • HTTP→HTTPS リダイレクト
    • SSL設定の共通化
    • プロキシ設定の標準化
  2. Docker Compose標準テンプレート開発

    • プロキシネットワーク自動接続
    • コンテナ名による接続
    • 固定IP不要の設計
  3. 設定自動生成スクリプト開発

    • サブドメイン入力による設定生成
    • Docker Compose連携
    • 構文チェック統合

成果物

  • /root/templates/nginx-sni-template.conf
  • /root/templates/docker-compose-template.yml
  • /root/scripts/generate-config.sh

作業手順

  1. 既存設定の分析
  2. 共通パターンの抽出
  3. テンプレート設計
  4. スクリプト開発
  5. テスト環境での検証

Redmine Admin さんが13日前に更新

進捗報告

設定テンプレートと動的生成スクリプトの初期設計が完了しました。

成果物

  1. Nginx SNI標準テンプレート

    • 共通のSSL設定
    • WebSocket対応オプション
    • コンテナ名ベースのプロキシ設定
  2. Docker Compose標準テンプレート

    • proxy-networkへの自動接続
    • サービス専用ネットワーク設定
    • ヘルスチェック標準実装
  3. 設定自動生成スクリプト

    • サブドメイン、コンテナ名、ポートからの自動設定
    • 各種カスタマイズオプション
    • 設定検証機能
  4. 実装手順書

    • インストール手順
    • 使用方法ガイド
    • 既存設定の移行計画

次のステップ

  1. VPS-ROOT環境でのテスト実装
  2. 既存サービスの段階的移行計画作成
  3. スクリプトの機能拡張(ロールバック機能等)

確認事項

実際のVPS-ROOT環境でテスト実装を進める前に、以下を確認したいです:

  • 標準テンプレートに追加すべき設定はありますか?
  • 特定のサービスで考慮すべき特殊な要件はありますか?
  • 最初に移行すべき優先度の高いサービスはありますか?

Redmine Admin さんが13日前に更新

  • ステータス新規 から 解決 に変更

作業完了報告

設定テンプレートと動的生成スクリプトの開発が完了しました。この作業は、チケット #378、#379、および #380 で実施された一連の「Nginx SNIとDocker Compose設定標準化」作業の一部として完成しています。

実施内容と成果

  1. Nginx設定の標準テンプレート開発

    • HTTP→HTTPS リダイレクト設定
    • ワイルドカードSSL証明書の設定
    • プロキシ設定の標準化(WebSocket対応を含む)
  2. Docker Compose標準テンプレート開発

    • プロキシネットワーク自動接続
    • コンテナ名による接続
    • ヘルスチェック設定の標準化
  3. 設定自動生成スクリプト開発

    • /root/scripts/nginx-proxy-config.sh - 設定生成スクリプト
    • サブドメイン、コンテナ名、ポートを入力するだけで設定を自動生成
    • オプション機能(WebSocket対応、カスタムイメージ、ポート設定など)

成果物

  1. 実装されたスクリプト

    • /root/scripts/nginx-proxy-config.sh - メインスクリプト(テンプレート生成機能内蔵)
    • /root/scripts/simple-nginx-proxy.sh - 簡易版スクリプト
  2. 生成される設定ファイル

    • /root/nginx-proxy/conf.d/<サブドメイン>.call2arm.com.conf - Nginx設定
    • /root/<サブドメイン>/docker-compose.yml - Docker Compose設定
  3. ドキュメント

    • 使用方法マニュアル
    • トラブルシューティングガイド
    • 設定例と解説

設計方針

当初予定していた別々のテンプレートファイルではなく、スクリプト内に直接テンプレート生成ロジックを組み込む方式を採用しました。これにより、以下のメリットが得られました:

  1. 柔軟性の向上 - 様々なオプションやカスタマイズに対応しやすくなりました
  2. 一貫性の保証 - テンプレートとスクリプトの不整合を防止できます
  3. メンテナンス性の向上 - 単一ファイルで管理でき、更新が容易になりました

補足情報

このスクリプトの開発と実装の詳細は、以下のチケットで確認できます:

  • チケット #378: 設定標準化テンプレートとスクリプトの実装テスト
  • チケット #379: Nginx SNIとDocker Compose設定標準化の改善
  • チケット #380: Nginx-Proxyコンテナ連携機能の完成と実運用適用

それぞれのチケットには、開発プロセス、テスト結果、および詳細なドキュメントが含まれています。

他の形式にエクスポート: Atom PDF