Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Cloud Run - Quickstartの1歩先 - 2019/05/14 GCPUG Kansai rito
Slide 2
Slide 2 text
目次 ➔ 自己紹介 ➔ Cloud Run の Quickstart ➔ Cloud SQLへの接続 ➔ Cloud Buildsの設定
Slide 3
Slide 3 text
名前: rito 職業: Webエンジニア (アプリケーションエンジニア) 分野: Ruby on Rails, Nodejs, React, Docker, AWS, GCP 所属: Ateam Finergy Inc. CTO コミュニティ: Rails follow-up Osaka Osaka Web Developers Meetup twitter: @chimame_rt
Slide 4
Slide 4 text
Cloud RunのQuickstart
Slide 5
Slide 5 text
No content
Slide 6
Slide 6 text
超手抜き 要は以下の2コマンドで終わる $ gcloud builds submit --tag gcr.io/[PROJECT-ID]/helloworld $ gcloud beta run deploy --image gcr.io/[PROJECT-ID]/helloworld
Slide 7
Slide 7 text
終わり
Slide 8
Slide 8 text
実際のアプリケーションは そうはいかない
Slide 9
Slide 9 text
特にデータ保存に使うアイツ
Slide 10
Slide 10 text
No content
Slide 11
Slide 11 text
Cloud Run(beta)リリース当初
Slide 12
Slide 12 text
No content
Slide 13
Slide 13 text
近いうちに対応するから ちょっと待て(超意訳)
Slide 14
Slide 14 text
No content
Slide 15
Slide 15 text
No content
Slide 16
Slide 16 text
No content
Slide 17
Slide 17 text
Cloud SQLへの接続
Slide 18
Slide 18 text
実行するDockerイメージに オプションを付与
Slide 19
Slide 19 text
$ gcloud beta run deploy \ --image [IMAGE] \ --add-cloudsql-instances ::
Slide 20
Slide 20 text
add-cloudsql-instancesオプションにより 実行するDockerコンテナにCloud SQL Proxyが自動的に設定される
Slide 21
Slide 21 text
アプリケーションからの接続
Slide 22
Slide 22 text
Cloud SQL Proxyの設定をすることで 以下のパスにunix socketファイルが 生成されるので接続する /cloudsql/::
Slide 23
Slide 23 text
これだけで接続可能
Slide 24
Slide 24 text
Cloud Buildの設定
Slide 25
Slide 25 text
Quickstartには もう1つコマンドがある
Slide 26
Slide 26 text
$ gcloud builds submit --tag gcr.io/[PROJECT-ID]/helloworld $ gcloud beta run deploy --image gcr.io/[PROJECT-ID]/helloworld
Slide 27
Slide 27 text
確かに動くけど 後で困ることがある
Slide 28
Slide 28 text
Dockerイメージビルド⏳
Slide 29
Slide 29 text
このままだと 何もキャッシュが効かない
Slide 30
Slide 30 text
No content
Slide 31
Slide 31 text
Kanikoとは ❏ Googleが開発したDockerイメージをビルドするた めのツール ❏ Dockerデーモンに依存せずイメージをビルドでき るという特徴を持つ
Slide 32
Slide 32 text
No content
Slide 33
Slide 33 text
Kanikoを使って キャッシュを効かせる呪文
Slide 34
Slide 34 text
$ gcloud config set builds/use_kaniko True
Slide 35
Slide 35 text
ビルド設定のyamlファイル
Slide 36
Slide 36 text
steps: - name: 'gcr.io/kaniko-project/executor:latest' args: - --build-arg=HOGE=fuga - --destination=gcr.io//:latest - --cache=true logsBucket: 'gs://hoge-logs/cloud-build'
Slide 37
Slide 37 text
このyamlファイルを指定して gcloud buildsを実行
Slide 38
Slide 38 text
$ gcloud builds submit --tag gcr.io/[PROJECT-ID]/helloworld $ gcloud builds submit --config ./cloudbuild.yaml
Slide 39
Slide 39 text
これだけでビルド時間が 2分30秒→30秒になった (フルでキャッシュが効いた場合)
Slide 40
Slide 40 text
ただ、まだ完璧ではない
Slide 41
Slide 41 text
No content
Slide 42
Slide 42 text
No content
Slide 43
Slide 43 text
Cloud SQLよりVPC対応は 時間かかるから 首を長くして待ってて (超意訳)
Slide 44
Slide 44 text
最後に
Slide 45
Slide 45 text
No content
Slide 46
Slide 46 text
No content
Slide 47
Slide 47 text
ご清聴ありがとうご ざいました。 ちまめ@rito