プロジェクト

全般

プロフィール

機能 #20

未完了
山一 城和

タスク #17: 社内サービスのサブドメイン化

VPSへNginx(リバースプロキシ)の導入(IaC対応)

機能 #20: VPSへNginx(リバースプロキシ)の導入(IaC対応)

山村 一允 さんが3ヶ月前に追加. 8日前に更新.

ステータス:
新規
優先度:
中
担当者:
開始日:
2026/08/05
期日:
進捗率:

0%

予定工数:

説明

概要

社内システムのサブドメイン化に向けた事前準備として、VPSへNginxをリバースプロキシとして導入する。

導入はDockerコンテナでの運用を前提とし、既存環境への影響を最小限に抑えつつ、設定の再現性・保守性を高める構成とする。

また、本対応を機にInfrastructure as Code(IaC)の考え方を取り入れ、Nginxの設定やDocker Compose、構築手順書などの構成情報をGitリポジトリで管理する。

インフラ設定管理リポジトリ:https://github.com/ksd-corp/company-infrastructure

これにより、環境の再現性、変更履歴の管理、レビュー、バックアップ、および将来的な自動化への対応を容易にする。

なお、パスワードやSSL証明書などの機密情報はGitリポジトリでは管理せず、.envファイルやDocker Volume等を利用して環境ごとに管理する。

DNSのAレコードではIPアドレスのみを指定でき、ポート番号を指定することはできない。そのため、各サブドメインへのアクセスはHTTP(80番)またはHTTPS(443番)で受け付け、Nginxでホスト名(サブドメイン)を判別し、VPS内で稼働している各サービスへ転送する構成とする。

Nginxではサブドメインごとに転送先のポート番号を設定し、リバースプロキシとして各サービスへアクセスを振り分ける。

サービス名 ポート番号 備考
Mattermost 8080
Redmine 3000
端末管理システム 8090
SES管理システム 8101 Apacheによるプロキシ設定あり
VPS内の/etc/httpd/conf.d/dav_svn.confで設定
SES管理システム(検証用) 8102 Apacheによるプロキシ設定あり
VPS内の/etc/httpd/conf.d/dav_svn.confで設定
基本的に停止している

実施内容

  • インフラ管理用Gitリポジトリの作成
  • DockerコンテナによるNginx環境の構築
  • Docker Composeファイルの作成
  • Nginx設定ファイル(nginx.conf、conf.d)の作成
  • .env.exampleおよび.gitignoreの作成
  • README(構築・運用手順)の作成
  • リバースプロキシ設定の作成
  • サブドメインごとの転送設定(Server Block)
  • HTTP(80番)・HTTPS(443番)でのアクセス確認
  • 既存のApache(SVN)との共存確認

完了条件

  • DockerコンテナとしてNginxが正常に起動すること
  • Nginxが80番・443番ポートでアクセスを受け付けられること
  • サブドメインごとに指定したサービスへアクセスを振り分けられること
  • 既存のApache(SVN)へ影響がないこと
  • Docker Composeにより環境を再現できること
  • Nginx関連の構成ファイルおよび手順書がGitリポジトリで管理されていること
  • 機密情報がGitリポジトリに含まれていないこと

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