エンジニア達の「完全に理解した」Talk #67

>100 Views

August 02, 25

スライド概要

profile-image

フリーランスプログラマです。 Angular, CHIRIMEN Open Hardware, MDN Web Doc 推しの人です。

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

続・Firebase を完全に理解した エンジニア達の「完全に理解した」Talk #67

2.

自己紹介 akihiko.KIgure a.k.a グレさん 恵比寿とグンマー帝国の 2 拠点でフロントエンド開発をしています。

3.

個人的推しOSS ※アルファベット順 Angular CHIRIMEN Open Hardware Firebase

4.

個人的推しOSS ※アルファベット順 MDN Web Docs Nx Rust

5.

今日テーマ

6.

今日お話する事 ● 前々回のおさらい ● 前回のおさらい ● Firebase での構築例

7.

● 前々回のおさらい

8.

前回:エンジニア達の「完全に理解した」Talk #61 タイトル:Nx を完全に理解した! ・Angular, Rust, Nx を使ったモノレポ開発の LT です。 スライド Youtube connpass

9.

nx ワークスペース作成例

10.

質問 続編として、下記 A or B どちらが見たい/聞きたいですか? Youtube のコメント欄に A or B どちらかポストしてください! A. Firebase に今回のコードをデプロイする話 B. さくら VPS に今回のコードをデプロイする話 視聴者の皆様と一緒に続編 & 登壇を決めていくスタイル

11.

● 前回のおさらい

12.

前回:エンジニア達の「完全に理解した」Talk #66 タイトル:Firebase を完全に理解した! ・Angular, Rust を Firebase にデプロイする LT です。 スライド Youtube connpass

13.

● Firebase での構築例

14.

前提条件 必要なツール ・Node.js 22.x ・Angular CLI 20.x ・Rust (latest stable) ・Firebase CLI ・Git

15.

プロジェクト構成 ・フロントエンド: Angular 20.x デプロイ先: Firebase Hosting ・バックエンド: Rust + Actix-web デプロイ先: Firebase Functions ・モノレポ管理: Nx 21.x ・CI/CD: GitHub Actions + Nx Cloud

16.

ここで、気付くべきだった・・・。

18.

お分かり頂けたであろうか・・・?

22.

一体いつから・・・・・・ Firebase functions に Rust の バイナリをデプロイ出来ると 錯覚していた?

23.

これを理解した時のワイ

24.

では、実現できる方法は?

25.

プロジェクト構成 ・フロントエンド: Angular 20.x デプロイ先: Firebase Hosting ・バックエンド: Rust + Actix-web デプロイ先: Google Cloud functions ・モノレポ管理: Nx 21.x ・CI/CD: GitHub Actions + Nx Cloud

26.

deploy build Cloud Functions Rust Github Action Nx Cloud deploy build Angular

27.

この構成で、デプロイを解説します!

28.

Firebase の Hosting の準備

32.

Firebase emulator で ローカルの起動確認 ※フロントエンドのみ

34.

デプロイ環境準備

35.

Firebase の token の取得

36.

$ firebase login:ci

38.

Nx Cloud の token の取得

39.

・Nx Cloud にログイン ・連携リポジトリ選択 ・開発用 Organization 作成 ・Nx Cloud の token 作成

40.

Nx Cloud ログイン > Organization > Overview > Setting > Access control

41.

Github の secret token 設定

42.

Github リポジトリ > Setting > Secret and variables > actions

43.

ワークフローの作成

44.

Nx Cloud の token Firebase の token

45.

Pull Request がマージされると

46.

Nx Cloud のジョブのリンク

49.

ビルド結果が deploy されると

50.

Firebase ログイン > プロジェクト > Hosting > ダッシュボード 最新の deploy が分かる

52.

GitHub Actions + Nx Cloud の 組み合わせメリット

53.

◎自動化された作業でミスを減らせる ・コードを GitHub にアップするだけで、自動でテストやビルドが実行される ・手作業の操作が不要なので、人的ミスが起きにくい ◎作業時間を大幅に短縮できる(Nx Cloud のキャッシュ機能) ・Nx Cloud は「前にやった作業の結果(キャッシュ)」を覚えていて、再実行せずに済む ・例:テストやビルドに 5 分かかっていたのが、数秒で終わることもある ◎チーム開発でも効率アップ ・他のメンバーがビルドした結果も共有できるので、同じ作業を繰り返さなくてよい ・結果的に、待ち時間が少なくなる ◎コードの品質が保たれる ・GitHub Actions で自動的に「テストが通るか?」「書き方は正しいか?」を確認できる ・バグやミスが入りづらくなる ◎どこでも同じ環境で確認できる ・手元のパソコンと GitHub 上の動作を合わせることで「うちでは動いた問題」が減る ・誰がやっても同じ手順でチェックされる安心感 ◎本番環境へのデプロイ(公開)も自動化できる ・GitHub Actions 経由で Firebase や Cloud Run に自動でデプロイ可能 ・「アップロード忘れ」などのミスを防げる

54.

まとめ Firebaseできるよ、にんげんだもの ぐれを

55.

あれ・・・?バックエンドは・・・?

56.

ということで、次回告知!!!

57.

次回テーマ Cloud Functions

58.

Google Cloud を完全に理解した エンジニア達の「完全に理解した」Talk #68

59.

ご静聴ありがとうございました!