[Advent Calendar 2021][Day5]開発環境を準備する

はじめに
Advent Calendar 2021のDay5。 開発環境を準備して、Day6から開発ができるようにします。
準備するもの
今回は、ローカル開発を構築するのは時間がもったいないので、Cloud Shellを利用しようと思います。
- 開発環境
- Google Cloudのプロジェクト
- GitHubのリポジトリ
- リモート開発環境
- Cloud Shell
- エディタ
- Cloud Shellのエディタ
Cloud Shellとは
Cloud Shell は、ブラウザから場所を問わずにアクセスできる、オンラインの開発および運用環境です。gcloud コマンドライン ツールや kubectl などのユーティリティがプリロードされたオンライン ターミナルを使用して、リソースを管理できます。オンラインの Cloud Shell エディタを使用して、クラウドベースのアプリを開発、ビルド、デバッグ、デプロイすることもできます。
Google Cloudを利用してWebアプリケーションの開発をするときは、Cloud Shellがおすすめです。
Cloud ShellのPros/Cons
- Pros
- 無料で4CPU, 16GBメモリ, 5GBの永続ディスクのLinux環境がすぐに使える
- コンピュータの性能は、記事投稿時点です
- 各種GCPの開発で必要なツールが全て入っている
- gcloud
- kubectl
- skaffold
- Docker
- etc...
- 開発者同士で同じ環境を共有できる
- Linux環境で開発できる
- Linuxで動作するプログラムを作る場合、Windows, Macを使うより環境差分がないので良い
- 物理的な故障がない
- 無料で4CPU, 16GBメモリ, 5GBの永続ディスクのLinux環境がすぐに使える
- Cons
- 性能の限界(4CPU, 16GBメモリ, 5GBの永続ディスク)がある
- Google StorageをFUSEでマウントするなどしたら、ストレージ容量は増やせますが、ブロックストレージではないので
- 機械学習など、大量のリソースが必要な開発では不向きです
- 各種ツールのバージョンが更新されていく(安定しない)
- たとえば、Node.jsのバージョンが使いたいバージョンと異なるときはnvmなどを使って固定化する必要がある
- Androidなど実機接続が必要となる開発では不向き
- エディタがVSCodeに比べると拡張などが少ない
- 性能の限界(4CPU, 16GBメモリ, 5GBの永続ディスク)がある
Webアプリケーションの開発では、結構使えそうだなという印象です。
準備する
前提として、すでにGoogle Cloudのアカウントを登録済みという状態で進めます。
- Cloud Shell
Google Cloudのアカウントを持っていれば、すぐにCloud Shellを起動できます。
https://console.cloud.google.com/home/dashboard?cloudshell=true
- Google Cloudのプロジェクト
Cloud Shellを使ってGoogle Cloudのプロジェクトを作成します。
cloudandbuild-adevent-calendar
の部分は、プロジェクトID、プロジェクト名を指定しています。
gcloud projects create cloudandbuild-adevent-calendar --name="cloudandbuild-adevent-calendar"
参考
https://cloud.google.com/sdk/gcloud/reference/projects/create
- GitHubのリポジトリ これはGithubのGUIから手動でつくります。
https://github.com/cloudandbuild/Advent-Calendar-2021
試しにCloudShellからリポジトリをクローンしておきましょう。
git clone https://github.com/cloudandbuild/Advent-Calendar-2021.git
まとめ
これで開発できる準備が整いました。 次回は、実際に開発を進めていこうと思います。
