Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Cloud Run - step ahead of the tutorial -
Search
chimame
May 14, 2019
Technology
2
900
Cloud Run - step ahead of the tutorial -
【大阪】GCPUG Kansai 〜 Cloud Next Extended ~
chimame
May 14, 2019
Tweet
Share
More Decks by chimame
See All by chimame
RemixでVersion skewに立ち向かう
chimame
1
790
私がエッジを使う理由
chimame
10
3.9k
GraphQL Server on Edge after that
chimame
1
1.3k
Accelerating App Dev with Cloudflare Workers
chimame
1
370
GraphQL Server on Edge
chimame
12
5.5k
エッジで輝くフロントエンド
chimame
11
6.5k
Cloudflare Workersと状態管理
chimame
4
1.5k
CSRなサイトを (疑似的な)ISRに変更した話
chimame
0
550
Cloud Runマネージドに適したアプリケーションを考える
chimame
1
270
Other Decks in Technology
See All in Technology
「 SharePoint 難しい」ってよく聞くけど、そんなに言うなら8歳の息子に試してもらった
taichinakamura
2
730
軽量DDDはもういらない! スタイルガイド本で OOPの実装パターンを学ぼう
panda_program
3
120
AWSコンテナ本出版から3年経った今、もし改めて執筆し直すなら / If I revise our container book
iselegant
15
4.1k
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
9
120k
グローバル展開を見据えたサービスにおける機械翻訳プラクティス / dp-ai-translating
cyberagentdevelopers
PRO
1
160
Exadata Database Service on Cloud@Customer セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
0
1.1k
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.6k
Vueで Webコンポーネントを作って Reactで使う / 20241030-cloudsign-vuefes_after_night
bengo4com
4
2.5k
Apple/Google/Amazonの決済システムの違いを踏まえた定期購読課金システムの構築 / abema-billing-system
cyberagentdevelopers
PRO
1
230
使えそうで使われないCloudHSM
maikamibayashi
1
240
Shift-from-React-to-Vue
calm1205
4
1.4k
SNSマーケティングに革新! ABEMA サッカー動画切り出しを生成AIで自動化し、業務効率化を狙う! / abema-ai-marketing
cyberagentdevelopers
PRO
1
110
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
65
11k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Why Our Code Smells
bkeepers
PRO
334
57k
Scaling GitHub
holman
458
140k
Practical Orchestrator
shlominoach
186
10k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
328
21k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
664
120k
Docker and Python
trallard
40
3.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
800
Designing Dashboards & Data Visualisations in Web Apps
destraynor
228
52k
Transcript
Cloud Run - Quickstartの1歩先 - 2019/05/14 GCPUG Kansai rito
目次 ➔ 自己紹介 ➔ Cloud Run の Quickstart ➔ Cloud
SQLへの接続 ➔ Cloud Buildsの設定
名前: 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
Cloud RunのQuickstart
None
超手抜き 要は以下の2コマンドで終わる $ gcloud builds submit --tag gcr.io/[PROJECT-ID]/helloworld $ gcloud
beta run deploy --image gcr.io/[PROJECT-ID]/helloworld
終わり
実際のアプリケーションは そうはいかない
特にデータ保存に使うアイツ
None
Cloud Run(beta)リリース当初
None
近いうちに対応するから ちょっと待て(超意訳)
None
None
None
Cloud SQLへの接続
実行するDockerイメージに オプションを付与
$ gcloud beta run deploy \ --image [IMAGE] \ --add-cloudsql-instances
<Project ID>:<region>:<Cloud SQL Instance name>
add-cloudsql-instancesオプションにより 実行するDockerコンテナにCloud SQL Proxyが自動的に設定される
アプリケーションからの接続
Cloud SQL Proxyの設定をすることで 以下のパスにunix socketファイルが 生成されるので接続する /cloudsql/<Project ID>:<region>:<Cloud SQL Instance
name>
これだけで接続可能
Cloud Buildの設定
Quickstartには もう1つコマンドがある
$ gcloud builds submit --tag gcr.io/[PROJECT-ID]/helloworld $ gcloud beta run
deploy --image gcr.io/[PROJECT-ID]/helloworld
確かに動くけど 後で困ることがある
Dockerイメージビルド⏳
このままだと 何もキャッシュが効かない
None
Kanikoとは ❏ Googleが開発したDockerイメージをビルドするた めのツール ❏ Dockerデーモンに依存せずイメージをビルドでき るという特徴を持つ
None
Kanikoを使って キャッシュを効かせる呪文
$ gcloud config set builds/use_kaniko True
ビルド設定のyamlファイル
steps: - name: 'gcr.io/kaniko-project/executor:latest' args: - --build-arg=HOGE=fuga - --destination=gcr.io/<Project ID>/<Image
name>:latest - --cache=true logsBucket: 'gs://hoge-logs/cloud-build'
このyamlファイルを指定して gcloud buildsを実行
$ gcloud builds submit --tag gcr.io/[PROJECT-ID]/helloworld $ gcloud builds submit
--config ./cloudbuild.yaml
これだけでビルド時間が 2分30秒→30秒になった (フルでキャッシュが効いた場合)
ただ、まだ完璧ではない
None
None
Cloud SQLよりVPC対応は 時間かかるから 首を長くして待ってて (超意訳)
最後に
None
None
ご清聴ありがとうご ざいました。 ちまめ@rito