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の紹介
Search
Yohei Iino
July 19, 2022
Programming
0
160
Cloud Runの紹介
- Cloud Runの紹介
- GAE→Cloud Runへの移行
- Cloud Run Jobsの紹介
Yohei Iino
July 19, 2022
Tweet
Share
More Decks by Yohei Iino
See All by Yohei Iino
1年半放置したExpo製アプリを最新化してみた
wheatandcat
0
86
作成中のFlutterアプリの中間発表
wheatandcat
0
72
最近読んだ技術書を簡単紹介
wheatandcat
0
92
ユニバーサルリンク/アプリリンクを使ってQRコードでゲストログインできるようにする
wheatandcat
0
350
Firebase App Checkを実装したので紹介
wheatandcat
0
240
PlanetScaleの無料プランがなくなるので、NeonとTiDBを試してみた
wheatandcat
0
370
Flutter HooksとRiverpodの解説
wheatandcat
0
510
T3 Stack(応用編: Next Auth & SSRの実装紹介)
wheatandcat
1
380
App Routerの紹介
wheatandcat
0
130
Other Decks in Programming
See All in Programming
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
190
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
150
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
300
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
560
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
340
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
160
Swift ConcurrencyでよりSwiftyに
yuukiw00w
0
270
メタプログラミングで実現する「コードを仕様にする」仕組み/nikkei-tech-talk43
nikkei_engineer_recruiting
0
190
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
1k
CSC307 Lecture 15
javiergs
PRO
0
260
AHC061解説
shun_pi
0
380
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
400
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
410
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
110
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
130
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
A Soul's Torment
seathinner
5
2.5k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Mobile First: as difficult as doing things right
swwweet
225
10k
sira's awesome portfolio website redesign presentation
elsirapls
0
190
Transcript
Cloud Run の紹介 Press Space for next page
自己紹介 📝 飯野陽平(wheatandcat ) 🏢 フリーランスエンジニア(シェアフル株式会社CTO ) 💻 Blog: https://www.wheatandcat.me/
🛠 今までに作ったもの memoir ペペロミア Atomic Design Check List
Cloud Run とは Cloud Run は、スケーラブルなインフラストラクチャ上でコンテナを直接実行できるマネー ジド コンピューティング プラットフォーム。 コンテナ
イメージをビルドしてデプロイして使用できる。 構成、スケーリングは設定で即座に変更可能。
実行形式 Cloud Run には以下の2 つの実行形式がある Cloud Run Service 主な用途: API
サーバー、web サイト、イベント処理 できること 自動スケーリング、各種スケーリングの設定 Cloud Run Jobs 主な用途: バッチ処理、ツール Cloud Run Service との差は以下の通り 設定タイムアウトの時間を最大1 時間まで設定可能 最大再試行回数を設定できる 並列処理
Cloud Run の使い方 Cloud Run では以下の2 つの方法でコンテナイメージの作成が可能。 Dockerfile を使用する Buildpacks
を使用する
Buildpacks とは Buildpacks は、ソースコードから読み取りベストプラクティスに則ってDockerfile を書かずにイメージを生成 してくれるツールで、現状だと以下のプラットフォームで対応している。 Go Node.js Python Java
.NET Core Learn More
Cloud Run Service をデプロイしてみる① 以下のチュートリアルをベースに、デプロイを紹介 Cloud Run に Go サービスをデプロイする
Cloud Run Service をデプロイしてみる② 以下のコマンドでイメージを作成 上記で、GCP のArtifact Registry にイメージが作成されるので、以下のコマンドでCloud Run
にデプロイ Learn More $ gcloud builds submit --pack image=IMAGE_URL $ gcloud run deploy $SERVICE_NAME \ --project=$PROJECT_ID \ --image=$IMAGE_URL \ --region=$REGION
環境変数の設定 環境変数の設定はコンソールから設定可能 環境変数の設定 環境変数で機密情報を設定する場合はSecret Manager の値をマウントできる。 シークレットを使用する
継続的デプロイの方法 GitHub Actions を使用して実装したので紹介 ▪ Cloud Run へ移行 https://github.com/wheatandcat/memoir-backend/pull/117/files
Cloud Run Jobs を試してみる① 以下のチュートリアルをベースに紹介 Cloud Run で Go ジョブをビルドして作成する
Cloud Run Jobs を試してみる② 以下のコマンドでイメージをデプロイ 以下のコマンドで作成したコンテナを使用してジョブを作成する 以下のコマンドで実行 $ gcloud builds
submit --pack image=gcr.io/PROJECT_ID/logger-job $ gcloud beta run jobs create $JOB_NAME \ --image gcr.io/PROJECT_ID/logger-job \ --tasks 50 \ --set-env-vars SLEEP_MS=10000 \ --set-env-vars FAIL_RATE=0.5 \ --max-retries 5 \ --region REGION $ gcloud beta run jobs execute $JOB_NAME
Cloud Run Jobs を試してみる③ 結果は、コンソールで確認できる
並列実行 以下の記事を元に紹介 Cloud Run jobs を解説する
Cloud Scheduler にJob を設定する 以下のチュートリアルをベースに紹介 スケジュールに従ってジョブを実行する URL には以下を設定する https://REGION-run.googleapis.com/apis/run.googleapis.com/v1/namespaces/PROJECT-ID/jobs/JOB-NAME:run
まとめ GCP の推しているサービスなだけあってスキの無い作りだった Cloud Run Jobs の登場でバッチ処理もカバーできるようになった Cloud Run Jobs
は、まだプレビューの状態なので注意
ご清聴ありがとうございました