前書き
Windows10を開発PCのOSとして開発に必要な各種サーバを含めて1台のPCで動作させることを目指して「オールインワンローカル環境」を構築します。
- Windows WSL内に開発用サーバ環境を構築
- Windows内に開発・試験環境を構築
- CI/CDサーバ・プロビジョニングサーバに接続できる場合は必要に応じて簡単にサーバにある最新モジュールをデプロイ、また、開発用最新データをDBにインポートできる環境を構築
※本ページは目次です。すいません。すべてを一度に公開はできませんので1年(目標)かけて記載します。その間、告知なしに内容を修正・変更することがありますが、ご了承ください。
目的・指針
ローカル環境は下記を指針とし、目指して構築していきます。
- サーバ機能をオールインワンですべてPC端末内で稼働させ、極力スタンドアローンで実行可能とします。
- 環境を構築する手順はDevOpsの観点から極力複雑な操作を廃し単純なコマンド・ボタンクリックで構築可能とすることを目指します。
- プログラミングと同様にローカル環境でインフラの調査設計・単体テスト・構築ができます。
- プロダクト環境はAWSを想定しています。AWS CLIでローカルDocker⇔AWS ECS設定の自動連携が可能となります。
- 最終的には営業担当者・開発担当者が自身で端末PC内に構築可能な状態にし、ネットワークのつながらない環境・リモート環境でも開発を継続できる、サンプル動作環境を自由に持ち運びプレゼンテーション等で動作している状況を見せることができる様にすることが最終目標です。
ローカル環境概略
ローカル環境の最終イメージは以下の通りWindows内に独立したLinux OSを構築し、更にそのLinux OS内にサーバ機能を導入します。
下図にある通り、Windowsの各種ドライブはLinux側に自動でマウントするため、ネットを介してのファイルコピー等の必要がないのでデプロイその他の速度が大幅に向上します。また、逆にLinux側のファイルもWindows側から
Linuxでの各種service起動・shell実行はwsl.exeを使用してWindowsタスクスケジューラに設定すればWindowsマシン起動時等に実行することも可能です。
ローカル環境俯瞰図
目次
-
Docker環境構成検討
-
DockerによるMySQL(RDBMS)サーバ構築
-
DockerによるGo言語(API)サーバ構築
-
DockerによるVue.js(UI)サーバ構築
-
DockerによるNginx(Web)サーバ構築
-
docker-composeによる簡易オーケストレーション
-
本番環境に相当するオーケストレーション
-
Kubernetesインストール・設定
-
KubernetesによるDocker構築
-
Portainerによるクラスタ管理
-
自動構成管理
-
DistroLauncherインストール・設定
-
DistroLauncherによるWSL環境イメージ作成
-
Ansibleインストール・設定
-
AnsibleによるWSL環境構築自動化
-
WSL内開発環境整備
-
DB Backup
-
DB Restore
-
APサーバコピー構築
-
APサーバCI/CD
-
サーバ自動起動・停止
-
開発アプリケーション(Windows)設定
-
A5mk2インストール・設定
-
VSCodeインストール・設定
番外
-
各リモートサーバへのSSHログイン・端末設定
-
X Windowへのリモートデスクトップでの接続
-
AWS CLI インストール・設定
-
AWS S3マウント
検討
- 環境内ツール類のブラウザアプリGUI化
Tips
- WSLのマウントについて
アーキテクト技術者・構成管理者・リモート開発者のためのローカル開発環境構築ガイド 次 > 1.WSL環境構築