SlideShare a Scribd company logo
1 of 18
Download to read offline
そのコンテナ化、本当に嬉しいですか?
2019/09/25 awswakaran.tokyo #2 @ Drecom
#awswakaran_tokyo
Who?
Yuta Suzuki (@euxn23)
Software Engineer
Node.js / Go / Rust (a little)
Angular / React
無職(2019/9/24-9/30)
コンテナ使ってますか?
Elastic Beanstalk
ECS
Fargate
EKS
コンテナ化すると便利ですよね
本番と同じ環境で開発できる
環境構築不要ですぐ使える
docker-compose でコンテナの依存関係も書ける
ほんとに?
例: アプリケーション
Rails のdev サーバのホットリロードがコンテナと相性悪い(asset pipeline)
フロントエンドの差分ビルドをwatch するとdocker とのI/O が遅くてつらい
複数アプリケーションを全部8080 で⽴てる設定をローカルでやるとぶつかる
アプリケーションをコンテナで開発するのはつらいかも
でもミドルウェアは便利だよね
例: ミドルウェア
1 マシンで複数バージョンのMySQL を使⽤したい
ElasticSearch の環境構築をしたくない
docker compose で構成管理したい
メンテされればね
本番環境と乖離するローカル⽤コンテナ定義
追従しないDockerfile.dev
追従しないdev 向けconfig
なんのために存在するかわからないdocker-compose のコンポーネント
極論: じゃあ本番と同じにしよう
> MySQL on ECS 爆誕<
運⽤したくなくないですか?
ストレージのマウントとかバックアップとか⾃前でやるの?
コンテナ越しにMaster-Slave 組むのつらくない?
そもそもコンテナにする恩恵ある?
結論
コンテナ化は節度を持って、場所を選んで、
継続的メンテをし{ましょう,たい}
アプリケーションのコンテナ化
ローカルでコンテナで開発する苦労vs 環境開発の苦労をちゃんと勘案する
そもそもコンテナ化するかどうかはアプリケーション特性による
Rails のようなフルスタックなアプリケーションならheroku も⼗分検討した⽅が良い
ミドルウェアのコンテナ化
PaaS とローカルの共通化を諦める勇気
ローカル向けの定義を継続的にメンテするor 諦める(嘘情報が⼀番悪いので)
お⾦に余裕があればdev ⽤のPaaS を⽤意するのが正しそう

More Related Content

What's hot

Virtual Kubelet and Virtual Node
Virtual Kubelet and Virtual NodeVirtual Kubelet and Virtual Node
Virtual Kubelet and Virtual NodeYoshio Terada
 
サービスリリースから安定軌道に乗せるまでに行った開発施策
サービスリリースから安定軌道に乗せるまでに行った開発施策サービスリリースから安定軌道に乗せるまでに行った開発施策
サービスリリースから安定軌道に乗せるまでに行った開発施策Keiichi Hagiwara
 
Node.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことNode.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことbitbank, Inc. Tokyo, Japan
 
知ってますか? Azure IoT Edge
知ってますか? Azure IoT Edge知ってますか? Azure IoT Edge
知ってますか? Azure IoT EdgeSaki Homma
 
改めて C# でできることを振り返る
改めて C# でできることを振り返る改めて C# でできることを振り返る
改めて C# でできることを振り返るYuta Matsumura
 
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?Yuta Matsumura
 
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたAKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたHideaki Aoyagi
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsYoshio Terada
 
How to face the Kubernetes ?
How to face the Kubernetes ? How to face the Kubernetes ?
How to face the Kubernetes ? Yoshio Terada
 
Bicep 入門 MySQL編
Bicep 入門 MySQL編Bicep 入門 MySQL編
Bicep 入門 MySQL編Takekazu Omi
 
今後のContainerの行く末の感じたこと、思ったこと 〜JKD参加報告〜
今後のContainerの行く末の感じたこと、思ったこと〜JKD参加報告〜今後のContainerの行く末の感じたこと、思ったこと〜JKD参加報告〜
今後のContainerの行く末の感じたこと、思ったこと 〜JKD参加報告〜Tsukasa Kato
 
Deploy TypeScript with CodePipeline in Fargate
Deploy TypeScript with CodePipeline in FargateDeploy TypeScript with CodePipeline in Fargate
Deploy TypeScript with CodePipeline in Fargatebitbank, Inc. Tokyo, Japan
 
20171112 OSS on Azure another story and more
20171112 OSS on Azure another story and more20171112 OSS on Azure another story and more
20171112 OSS on Azure another story and moreTakayoshi Tanaka
 
これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏Yuta Matsumura
 
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot InstancesMobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot InstancesMasafumi Noguchi
 
Blazor Server テンプレート解説
Blazor Server テンプレート解説Blazor Server テンプレート解説
Blazor Server テンプレート解説Yuta Matsumura
 
改めてPaaSについて考えてみる
改めてPaaSについて考えてみる改めてPaaSについて考えてみる
改めてPaaSについて考えてみるKazuto Kusama
 

What's hot (20)

Virtual Kubelet and Virtual Node
Virtual Kubelet and Virtual NodeVirtual Kubelet and Virtual Node
Virtual Kubelet and Virtual Node
 
0831 node学園lt
0831 node学園lt0831 node学園lt
0831 node学園lt
 
サービスリリースから安定軌道に乗せるまでに行った開発施策
サービスリリースから安定軌道に乗せるまでに行った開発施策サービスリリースから安定軌道に乗せるまでに行った開発施策
サービスリリースから安定軌道に乗せるまでに行った開発施策
 
Node.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことNode.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたこと
 
知ってますか? Azure IoT Edge
知ってますか? Azure IoT Edge知ってますか? Azure IoT Edge
知ってますか? Azure IoT Edge
 
改めて C# でできることを振り返る
改めて C# でできることを振り返る改めて C# でできることを振り返る
改めて C# でできることを振り返る
 
Fukuten 20200117 up
Fukuten 20200117 upFukuten 20200117 up
Fukuten 20200117 up
 
そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?そろそろレガシーな.Net開発をやめなイカ?
そろそろレガシーな.Net開発をやめなイカ?
 
AKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみたAKS と ACI を組み合わせて使ってみた
AKS と ACI を組み合わせて使ってみた
 
AKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab ContentsAKS (k8s) Hands on Lab Contents
AKS (k8s) Hands on Lab Contents
 
How to face the Kubernetes ?
How to face the Kubernetes ? How to face the Kubernetes ?
How to face the Kubernetes ?
 
Bicep 入門 MySQL編
Bicep 入門 MySQL編Bicep 入門 MySQL編
Bicep 入門 MySQL編
 
今後のContainerの行く末の感じたこと、思ったこと 〜JKD参加報告〜
今後のContainerの行く末の感じたこと、思ったこと〜JKD参加報告〜今後のContainerの行く末の感じたこと、思ったこと〜JKD参加報告〜
今後のContainerの行く末の感じたこと、思ったこと 〜JKD参加報告〜
 
Deploy TypeScript with CodePipeline in Fargate
Deploy TypeScript with CodePipeline in FargateDeploy TypeScript with CodePipeline in Fargate
Deploy TypeScript with CodePipeline in Fargate
 
20171112 OSS on Azure another story and more
20171112 OSS on Azure another story and more20171112 OSS on Azure another story and more
20171112 OSS on Azure another story and more
 
.NET Coreのいろは
.NET Coreのいろは.NET Coreのいろは
.NET Coreのいろは
 
これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏これから始める Bot Builder 開発のコツと舞台裏
これから始める Bot Builder 開発のコツと舞台裏
 
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot InstancesMobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
MobingiALM でスポットインスタンスをいい感じに手なづけている裏側の話 / How to manage EC2 Spot Instances
 
Blazor Server テンプレート解説
Blazor Server テンプレート解説Blazor Server テンプレート解説
Blazor Server テンプレート解説
 
改めてPaaSについて考えてみる
改めてPaaSについて考えてみる改めてPaaSについて考えてみる
改めてPaaSについて考えてみる
 

Similar to そのコンテナ化、本当に嬉しいですか?

実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~Saki Homma
 
Couch DB in 15minutes
Couch DB in 15minutesCouch DB in 15minutes
Couch DB in 15minutesYohei Sasaki
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShiftEtsuji Nakai
 
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-Saki Homma
 
Web系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ー
Web系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ーWeb系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ー
Web系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ーYosuke INOUE
 
Java on Kubernetes on Azure
Java on Kubernetes on AzureJava on Kubernetes on Azure
Java on Kubernetes on AzureYoshio Terada
 
同じサービスを ECSとOpsWorksで 運用してみた
同じサービスをECSとOpsWorksで運用してみた同じサービスをECSとOpsWorksで運用してみた
同じサービスを ECSとOpsWorksで 運用してみたJun Ichikawa
 
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...NTT DATA Technology & Innovation
 
Docker for Windows & Web Apps for Containers 実践活用技法
Docker for Windows & Web Apps for Containers 実践活用技法Docker for Windows & Web Apps for Containers 実践活用技法
Docker for Windows & Web Apps for Containers 実践活用技法Microsoft Corporation
 
中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介NilOne Ltd.
 
Docker Tシャツを着て Docker の話をする
Docker Tシャツを着て Docker の話をするDocker Tシャツを着て Docker の話をする
Docker Tシャツを着て Docker の話をするYoshiaki Yoshida
 
2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコム2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコムTomoyaTakegoshi
 
クラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれクラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれMasataka MIZUNO
 
120512 metro styleapp_javascript
120512 metro styleapp_javascript120512 metro styleapp_javascript
120512 metro styleapp_javascriptTakayoshi Tanaka
 
ネットゲーム開発者がサーバレスしてみたver1.10
ネットゲーム開発者がサーバレスしてみたver1.10ネットゲーム開発者がサーバレスしてみたver1.10
ネットゲーム開発者がサーバレスしてみたver1.10Yasuharu Suzuki
 
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?Kuniyasu Suzaki
 
JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)taskie
 
Azure container as a service v0.1.19.1213
Azure container as a service v0.1.19.1213Azure container as a service v0.1.19.1213
Azure container as a service v0.1.19.1213Ayumu Inaba
 
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdfAkira Tateishi
 

Similar to そのコンテナ化、本当に嬉しいですか? (20)

実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
 
Couch DB in 15minutes
Couch DB in 15minutesCouch DB in 15minutes
Couch DB in 15minutes
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift
 
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
 
Web系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ー
Web系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ーWeb系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ー
Web系エンジニアのためのスキルアップ講座 ーDockerで開発環境を作ろう ー
 
Java on Kubernetes on Azure
Java on Kubernetes on AzureJava on Kubernetes on Azure
Java on Kubernetes on Azure
 
同じサービスを ECSとOpsWorksで 運用してみた
同じサービスをECSとOpsWorksで運用してみた同じサービスをECSとOpsWorksで運用してみた
同じサービスを ECSとOpsWorksで 運用してみた
 
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
GraalVMの多言語実行機能が凄そうだったので試しにApache Sparkに組み込んで動かしてみたけどちょっとまだ早かったかもしれない(Open So...
 
Docker for Windows & Web Apps for Containers 実践活用技法
Docker for Windows & Web Apps for Containers 実践活用技法Docker for Windows & Web Apps for Containers 実践活用技法
Docker for Windows & Web Apps for Containers 実践活用技法
 
中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介中規模Androidアプリ開発の過程に生じた問題と対策の紹介
中規模Androidアプリ開発の過程に生じた問題と対策の紹介
 
Docker Tシャツを着て Docker の話をする
Docker Tシャツを着て Docker の話をするDocker Tシャツを着て Docker の話をする
Docker Tシャツを着て Docker の話をする
 
第37回「Dockerのユースケースと将来」(2014/10/30 on しすなま!)
第37回「Dockerのユースケースと将来」(2014/10/30 on しすなま!)第37回「Dockerのユースケースと将来」(2014/10/30 on しすなま!)
第37回「Dockerのユースケースと将来」(2014/10/30 on しすなま!)
 
2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコム2019年度 CaaS ワークショップ @ NTTコム
2019年度 CaaS ワークショップ @ NTTコム
 
クラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれクラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれ
 
120512 metro styleapp_javascript
120512 metro styleapp_javascript120512 metro styleapp_javascript
120512 metro styleapp_javascript
 
ネットゲーム開発者がサーバレスしてみたver1.10
ネットゲーム開発者がサーバレスしてみたver1.10ネットゲーム開発者がサーバレスしてみたver1.10
ネットゲーム開発者がサーバレスしてみたver1.10
 
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
TEE (Trusted Execution Environment)は第二の仮想化技術になるか?
 
JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)JavaScript Tips 2015(PDF 版)
JavaScript Tips 2015(PDF 版)
 
Azure container as a service v0.1.19.1213
Azure container as a service v0.1.19.1213Azure container as a service v0.1.19.1213
Azure container as a service v0.1.19.1213
 
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
2023-01-26_IoTに活かそう!「UNIXという考え方」.pdf
 

そのコンテナ化、本当に嬉しいですか?