SlideShare a Scribd company logo
Bazelでビルドしたアプリを
GCPにデプロイしようとしてハマった話
(Dataflowのあたり)
GCPUG Tokyo DevOps Day September 2017
Katsunori Kanda (@potix2)
自己紹介
神田勝規(かんだかつのり) @potix2
株式会社サイバーエージェント アドテクスタジオ
サーバーサイドエンジニア
興味があること
ROS / droneの自律制御
Minecraft
結論
● gRPC使うならbazelは良い選択肢
● golangは依存関係の解決にやや難があるが使えなくは無い
○ 最近、cross compileできるようになった:)
● bazelを使ってJavaのビルドをするのは辛い(とくにDartaflow)
bazelとは?
● 最近、google関連のOSSでよく使われているビルドツール
○ tensorflow, kubernetes, istioなど
● 分散ビルドシステム
● 多言語マルチプロジェクトが扱いやすい(DAG)
● 競合プロダクト: pants
service.proto
java client
server app
golang
client
protocol bufferも
プロジェクトとして扱える
(オススメポイント)
Bazelの簡単な使い方
● ルートディレクトリにWORKSPACEファイルを置く
○ 読み込むbazelのrule(プラグインのようなもの)など、
全体設定を書く
● ビルド対象のディレクトリにBUILDファイルを置く
○ プログジェクトのビルド設定を書く。バイナリーの生
成ルールや、テストの実行方法など。
gRPCサービス・クライアントの例(golang)
.
├── BUILD
├── WORKSPACE
└── hello
├── BUILD
├── client
│ ├── BUILD
│ └── client.go
├── hello.proto
└── server
├── BUILD
└── server.go
ファイル一式: https://github.com/potix2/grpc-with-bazel
hello
hello/server
hello/client
ファイル構造 プロジェクトの依存関係
WORKSPACEの例
git_repository(
name = “io_bazel_rules_go”,
remote = “https://github.com/bazelbuild/rules_go.git”,
tag = “0.5.2”,
)
load(“@io_bazel_rules_go//go:def.bzl”, “go_repositories”, “go_repository”)
git_repository(
name = "org_pubref_rules_protobuf",
remote = "https://github.com/pubref/rules_protobuf.git",
tag = "v0.7.2",
)
load("@org_pubref_rules_protobuf//go:rules.bzl", "go_proto_repositories")
go_proto_repositories()
go_repositories(
go_version = "1.8.3",
)
...
package(default_visibility = ["//visibility:public"])
load("@org_pubref_rules_protobuf//go:rules.bzl", "go_proto_library")
go_proto_library(
name = "hello-go-proto",
protos = [
"hello.proto",
],
with_grpc = True,
)
BUILDの例: hello(gRPC)
hello/BUILD
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
go_library(
name = "go_default_library",
srcs = ["server.go"],
visibility = ["//visibility:private"],
deps = [
"//hello:hello-go-proto",
"@org_golang_google_grpc//:go_default_library",
"@org_golang_x_net//context:go_default_library",
],
)
go_binary(
name = "server",
library = ":go_default_library",
visibility = ["//visibility:public"],
)
BUILDの例: hello/server (golang)
hello/server/BUILD
ここからはbazelのつらいはなし
Dataflowアプリのビルド
● 一言で言うと地獄
● Transitive dependencyを解決する良い方法がない
● jarのバージョンコンフリクトした時の解決ルールが
mavenと違う
○ bazelはプロジェクト初期からJavaのビルドをサポートしているはずな
のに・・・
Transitive Dependencyとは?
dependency
Transitive dependency
...
...
Dataflowアプリをビルドするためにやったこと
● 公式ページに書いてある方法だとうまく行かない
○ 参考: https://docs.bazel.build/versions/master/generate-workspace.html
● https://github.com/bazelbuild/miglation-tooling を使ってみた
○ が、これもうまく行かない
● mavenの実行結果から依存関係を抽出するスクリプトを書いて対処した
○ チームメンバーが作ってくれた!ありがとう:)bazelのjava_rulesがmavenと同じルールで依存関係を解決してくれるようになるといいな・・・
結論(ふたたび)
● gRPC使うならbazelは良い選択肢
● golangは依存関係の解決にやや難があるが使えなくは無い
○ 最近、cross compileできるようになった:)
● bazelを使ってJavaのビルドをするのは辛い(とくにDartaflow)
おしまい

More Related Content

What's hot

Datalab and colaboratory
Datalab and colaboratoryDatalab and colaboratory
Datalab and colaboratory
Hayato Yoshikawa
 
FirebaseとNuxtでLPを作って見た
FirebaseとNuxtでLPを作って見たFirebaseとNuxtでLPを作って見た
FirebaseとNuxtでLPを作って見た
Kenjiro Kubota
 
Serverless on GCP
Serverless on GCPServerless on GCP
Serverless on GCP
Hayato Yoshikawa
 
2018 07-23
2018 07-232018 07-23
2018 07-23
Yuji Oshima
 
Chrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみるChrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみるMasakazu Muraoka
 
ClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろう
Kazuhiro Hara
 
mruby_nginx_module at pyfes 2013.11
mruby_nginx_module at pyfes 2013.11mruby_nginx_module at pyfes 2013.11
mruby_nginx_module at pyfes 2013.11Tatsuhiko Kubo
 
mruby_nginx_module
mruby_nginx_modulemruby_nginx_module
mruby_nginx_module
Tatsuhiko Kubo
 
GCP HTTPロードバランサ運用例
GCP HTTPロードバランサ運用例GCP HTTPロードバランサ運用例
GCP HTTPロードバランサ運用例
Fumihiko Shiroyama
 
Tfug kansai vol3
Tfug kansai vol3Tfug kansai vol3
Tfug kansai vol3
Natsutani Minoru
 
Google Apps Script 概要
Google Apps Script 概要Google Apps Script 概要
Google Apps Script 概要
Y OCHI
 
mruby_nginx_module〜Embedded mruby into Nginx〜
mruby_nginx_module〜Embedded mruby into Nginx〜mruby_nginx_module〜Embedded mruby into Nginx〜
mruby_nginx_module〜Embedded mruby into Nginx〜
Tatsuhiko Kubo
 
The History of Reactive Extensions
The History of Reactive ExtensionsThe History of Reactive Extensions
The History of Reactive Extensions
Yoshifumi Kawai
 
Gatsby & React Static
Gatsby & React StaticGatsby & React Static
Gatsby & React Static
Kazuhiro Hara
 
ng build --prod & Continuous Delivery
ng build --prod & Continuous Deliveryng build --prod & Continuous Delivery
ng build --prod & Continuous Delivery
bitbank, Inc. Tokyo, Japan
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
Yuta Matsumura
 
MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~
torisoup
 
Clojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状について
Clojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状についてClojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状について
Clojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状について
Kazuhiro Hara
 
Excite beer bash06
Excite beer bash06Excite beer bash06
Excite beer bash06
Arata Honda
 

What's hot (20)

Datalab and colaboratory
Datalab and colaboratoryDatalab and colaboratory
Datalab and colaboratory
 
FirebaseとNuxtでLPを作って見た
FirebaseとNuxtでLPを作って見たFirebaseとNuxtでLPを作って見た
FirebaseとNuxtでLPを作って見た
 
Serverless on GCP
Serverless on GCPServerless on GCP
Serverless on GCP
 
2018 07-23
2018 07-232018 07-23
2018 07-23
 
Chrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみるChrome osとgo言語からgoogleの今後を妄想してみる
Chrome osとgo言語からgoogleの今後を妄想してみる
 
Mongodb World 2014
Mongodb World 2014Mongodb World 2014
Mongodb World 2014
 
ClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろう
 
mruby_nginx_module at pyfes 2013.11
mruby_nginx_module at pyfes 2013.11mruby_nginx_module at pyfes 2013.11
mruby_nginx_module at pyfes 2013.11
 
mruby_nginx_module
mruby_nginx_modulemruby_nginx_module
mruby_nginx_module
 
GCP HTTPロードバランサ運用例
GCP HTTPロードバランサ運用例GCP HTTPロードバランサ運用例
GCP HTTPロードバランサ運用例
 
Tfug kansai vol3
Tfug kansai vol3Tfug kansai vol3
Tfug kansai vol3
 
Google Apps Script 概要
Google Apps Script 概要Google Apps Script 概要
Google Apps Script 概要
 
mruby_nginx_module〜Embedded mruby into Nginx〜
mruby_nginx_module〜Embedded mruby into Nginx〜mruby_nginx_module〜Embedded mruby into Nginx〜
mruby_nginx_module〜Embedded mruby into Nginx〜
 
The History of Reactive Extensions
The History of Reactive ExtensionsThe History of Reactive Extensions
The History of Reactive Extensions
 
Gatsby & React Static
Gatsby & React StaticGatsby & React Static
Gatsby & React Static
 
ng build --prod & Continuous Delivery
ng build --prod & Continuous Deliveryng build --prod & Continuous Delivery
ng build --prod & Continuous Delivery
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 
MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~MagicOnion~C#でゲームサーバを開発しよう~
MagicOnion~C#でゲームサーバを開発しよう~
 
Clojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状について
Clojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状についてClojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状について
Clojure の各種React系ラッパーライブラリのサーバーサイドレンダリングの現状について
 
Excite beer bash06
Excite beer bash06Excite beer bash06
Excite beer bash06
 

Similar to BazelでビルドしたアプリをGCPにデプロイしようとしてハマった話

Grailsのススメ(仮)
Grailsのススメ(仮)Grailsのススメ(仮)
Grailsのススメ(仮)
Tsuyoshi Yamamoto
 
Groovy base gradle_20130309
Groovy base gradle_20130309Groovy base gradle_20130309
Groovy base gradle_20130309Nobuhiro Sue
 
Datadog Agent on CloudRunによるGCPトレービリティ向上
Datadog Agent on CloudRunによるGCPトレービリティ向上Datadog Agent on CloudRunによるGCPトレービリティ向上
Datadog Agent on CloudRunによるGCPトレービリティ向上
Ryo Sasaki
 
Gws 20120521 gradle
Gws 20120521 gradleGws 20120521 gradle
Gws 20120521 gradleNobuhiro Sue
 
Google Product
Google ProductGoogle Product
Google Product
Daisuke Sugai
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
Google Cloud Platform - Japan
 
私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由
gree_tech
 
明日から使えるgradle
明日から使えるgradle明日から使えるgradle
明日から使えるgradlekimukou_26 Kimukou
 
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
Ryuji Tamagawa
 
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
visasQ - ビザスク
 
2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-available2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-available
Naoto Gohko
 
SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-
CASAREAL, Inc.
 
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
Masaya Aoyama
 
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
Google Cloud Platform - Japan
 
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Codeどっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
Takashi Okawa
 
Node-REDのロードマップや見どころ
Node-REDのロードマップや見どころNode-REDのロードマップや見どころ
Node-REDのロードマップや見どころ
BMXUG
 
ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)
Takayoshi Tanaka
 
Gae hands on
Gae hands onGae hands on
Gae hands on
Hayato Ito
 
0831 node学園lt
0831 node学園lt0831 node学園lt
0831 node学園lt
Kazuya Fukumoto
 
Tech lounge gcp_20190313
Tech lounge gcp_20190313Tech lounge gcp_20190313
Tech lounge gcp_20190313
yutaka_baba
 

Similar to BazelでビルドしたアプリをGCPにデプロイしようとしてハマった話 (20)

Grailsのススメ(仮)
Grailsのススメ(仮)Grailsのススメ(仮)
Grailsのススメ(仮)
 
Groovy base gradle_20130309
Groovy base gradle_20130309Groovy base gradle_20130309
Groovy base gradle_20130309
 
Datadog Agent on CloudRunによるGCPトレービリティ向上
Datadog Agent on CloudRunによるGCPトレービリティ向上Datadog Agent on CloudRunによるGCPトレービリティ向上
Datadog Agent on CloudRunによるGCPトレービリティ向上
 
Gws 20120521 gradle
Gws 20120521 gradleGws 20120521 gradle
Gws 20120521 gradle
 
Google Product
Google ProductGoogle Product
Google Product
 
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Appsグリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
グリー株式会社『私たちが GCP を使い始めた本当の理由』第 9 回 Google Cloud INSIDE Game & Apps
 
私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由私たちがGCPを使い始めた本当の理由
私たちがGCPを使い始めた本当の理由
 
明日から使えるgradle
明日から使えるgradle明日から使えるgradle
明日から使えるgradle
 
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
RDB経験者に送るMongoDBの勘所(db tech showcase tokyo 2013)
 
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
 
2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-available2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-available
 
SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-SpringOne Platform Replay -Pivotal Cloud Foundry-
SpringOne Platform Replay -Pivotal Cloud Foundry-
 
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
CI/CD Pipeline を考える 〜KubeCon 2017 + CyberAgent の最大公倍数〜
 
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
CEDEC 2015: Google スケールで実現する!ゲーム&分析基盤
 
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Codeどっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
どっちの VS ショー / 伝統の Visual Studio 2019、人気の Visual Studio Code
 
Node-REDのロードマップや見どころ
Node-REDのロードマップや見どころNode-REDのロードマップや見どころ
Node-REDのロードマップや見どころ
 
ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)ASP.NET Core のお気に入りの機能たち (docker向け)
ASP.NET Core のお気に入りの機能たち (docker向け)
 
Gae hands on
Gae hands onGae hands on
Gae hands on
 
0831 node学園lt
0831 node学園lt0831 node学園lt
0831 node学園lt
 
Tech lounge gcp_20190313
Tech lounge gcp_20190313Tech lounge gcp_20190313
Tech lounge gcp_20190313
 

More from Katsunori Kanda

Airflow 2.0 migration ガイド
Airflow 2.0 migration ガイドAirflow 2.0 migration ガイド
Airflow 2.0 migration ガイド
Katsunori Kanda
 
Web Privacy Survival Guide
Web Privacy Survival GuideWeb Privacy Survival Guide
Web Privacy Survival Guide
Katsunori Kanda
 
Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話
Katsunori Kanda
 
GCSでstatic web hosting
GCSでstatic web hostingGCSでstatic web hosting
GCSでstatic web hosting
Katsunori Kanda
 
Dockerだけではないコンテナのはなし
DockerだけではないコンテナのはなしDockerだけではないコンテナのはなし
Dockerだけではないコンテナのはなし
Katsunori Kanda
 
RealSenseを使ってCrazyflieを自律飛行させてみた
RealSenseを使ってCrazyflieを自律飛行させてみたRealSenseを使ってCrazyflieを自律飛行させてみた
RealSenseを使ってCrazyflieを自律飛行させてみた
Katsunori Kanda
 
KINECT WITH ROS
KINECT WITH ROSKINECT WITH ROS
KINECT WITH ROS
Katsunori Kanda
 
Docker超入門
Docker超入門Docker超入門
Docker超入門
Katsunori Kanda
 
Hadoopことはじめ
HadoopことはじめHadoopことはじめ
Hadoopことはじめ
Katsunori Kanda
 
データファースト開発
データファースト開発データファースト開発
データファースト開発
Katsunori Kanda
 
Spark Summit 2015 参加報告
Spark Summit 2015 参加報告Spark Summit 2015 参加報告
Spark Summit 2015 参加報告
Katsunori Kanda
 
20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのか20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのか
Katsunori Kanda
 
Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説
Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説
Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説
Katsunori Kanda
 
自動テストのすすめ
自動テストのすすめ自動テストのすすめ
自動テストのすすめKatsunori Kanda
 

More from Katsunori Kanda (14)

Airflow 2.0 migration ガイド
Airflow 2.0 migration ガイドAirflow 2.0 migration ガイド
Airflow 2.0 migration ガイド
 
Web Privacy Survival Guide
Web Privacy Survival GuideWeb Privacy Survival Guide
Web Privacy Survival Guide
 
Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話Airflowを広告データのワークフローエンジンとして運用してみた話
Airflowを広告データのワークフローエンジンとして運用してみた話
 
GCSでstatic web hosting
GCSでstatic web hostingGCSでstatic web hosting
GCSでstatic web hosting
 
Dockerだけではないコンテナのはなし
DockerだけではないコンテナのはなしDockerだけではないコンテナのはなし
Dockerだけではないコンテナのはなし
 
RealSenseを使ってCrazyflieを自律飛行させてみた
RealSenseを使ってCrazyflieを自律飛行させてみたRealSenseを使ってCrazyflieを自律飛行させてみた
RealSenseを使ってCrazyflieを自律飛行させてみた
 
KINECT WITH ROS
KINECT WITH ROSKINECT WITH ROS
KINECT WITH ROS
 
Docker超入門
Docker超入門Docker超入門
Docker超入門
 
Hadoopことはじめ
HadoopことはじめHadoopことはじめ
Hadoopことはじめ
 
データファースト開発
データファースト開発データファースト開発
データファースト開発
 
Spark Summit 2015 参加報告
Spark Summit 2015 参加報告Spark Summit 2015 参加報告
Spark Summit 2015 参加報告
 
20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのか20150207 何故scalaを選んだのか
20150207 何故scalaを選んだのか
 
Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説
Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説
Discretized Streams: Fault-Tolerant Streaming Computation at Scaleの解説
 
自動テストのすすめ
自動テストのすすめ自動テストのすすめ
自動テストのすすめ
 

Recently uploaded

生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
Osaka University
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
osamut
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
azuma satoshi
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
嶋 是一 (Yoshikazu SHIMA)
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
tazaki1
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 

Recently uploaded (7)

生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 

BazelでビルドしたアプリをGCPにデプロイしようとしてハマった話