Enviar búsqueda
Cargar
開発環境をVagrantからdockerに移行してみた
•
Descargar como PPTX, PDF
•
2 recomendaciones
•
1,563 vistas
pyar6329
Seguir
雑兵Meetup #6 zohyo-fesの資料 飛び込み参加の人です
Leer menos
Leer más
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 12
Descargar ahora
Recomendados
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
Masahito Zembutsu
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
Recruit Lifestyle Co., Ltd.
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話
Takuto Wada
Tackling Complexity
Tackling Complexity
Yoshitaka Kawashima
Swagger ではない OpenAPI Specification 3.0 による API サーバー開発
Swagger ではない OpenAPI Specification 3.0 による API サーバー開発
Yahoo!デベロッパーネットワーク
Cloud FoundryでDockerも.NETも。新しいDiegoの仕組み入門
Cloud FoundryでDockerも.NETも。新しいDiegoの仕組み入門
Kazuto Kusama
React + Amplifyで アプリ開発
React + Amplifyで アプリ開発
虎の穴 開発室
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
NTT DATA Technology & Innovation
Recomendados
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
Masahito Zembutsu
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
Recruit Lifestyle Co., Ltd.
RESTful Web アプリの設計レビューの話
RESTful Web アプリの設計レビューの話
Takuto Wada
Tackling Complexity
Tackling Complexity
Yoshitaka Kawashima
Swagger ではない OpenAPI Specification 3.0 による API サーバー開発
Swagger ではない OpenAPI Specification 3.0 による API サーバー開発
Yahoo!デベロッパーネットワーク
Cloud FoundryでDockerも.NETも。新しいDiegoの仕組み入門
Cloud FoundryでDockerも.NETも。新しいDiegoの仕組み入門
Kazuto Kusama
React + Amplifyで アプリ開発
React + Amplifyで アプリ開発
虎の穴 開発室
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
NTT DATA Technology & Innovation
画像ベース異常検知Amazon Lookout for Visionを使ってみよう
画像ベース異常検知Amazon Lookout for Visionを使ってみよう
TakanoriTsutsui
GitHubで雑誌・書籍を作る
GitHubで雑誌・書籍を作る
Naonori Inao
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
Shingo Fukui
ChatGPTは思ったほど賢くない
ChatGPTは思ったほど賢くない
Carnot Inc.
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Amazon Web Services Japan
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
Yahoo!デベロッパーネットワーク
Rest ful api設計入門
Rest ful api設計入門
Monstar Lab Inc.
シングルサインオンの歴史とSAMLへの道のり
シングルサインオンの歴史とSAMLへの道のり
Shinichi Tomita
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
onozaty
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Cloud Foundryは何故動くのか
Cloud Foundryは何故動くのか
Kazuto Kusama
HDFSのスケーラビリティの限界を突破するためのさまざまな取り組み | Hadoop / Spark Conference Japan 2019 #hc...
HDFSのスケーラビリティの限界を突破するためのさまざまな取り組み | Hadoop / Spark Conference Japan 2019 #hc...
Yahoo!デベロッパーネットワーク
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
AWS CognitoからAuth0への移行パターン4つ
AWS CognitoからAuth0への移行パターン4つ
株式会社スタジオメッシュ
ChatGPTのビジネス活用とセキュリティ
ChatGPTのビジネス活用とセキュリティ
Daisuke Masubuchi
Hadoop ~Yahoo! JAPANの活用について~
Hadoop ~Yahoo! JAPANの活用について~
Yahoo!デベロッパーネットワーク
Más contenido relacionado
La actualidad más candente
画像ベース異常検知Amazon Lookout for Visionを使ってみよう
画像ベース異常検知Amazon Lookout for Visionを使ってみよう
TakanoriTsutsui
GitHubで雑誌・書籍を作る
GitHubで雑誌・書籍を作る
Naonori Inao
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
Shingo Fukui
ChatGPTは思ったほど賢くない
ChatGPTは思ったほど賢くない
Carnot Inc.
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Amazon Web Services Japan
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
Yahoo!デベロッパーネットワーク
Rest ful api設計入門
Rest ful api設計入門
Monstar Lab Inc.
シングルサインオンの歴史とSAMLへの道のり
シングルサインオンの歴史とSAMLへの道のり
Shinichi Tomita
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
Takuto Wada
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
onozaty
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Cloud Foundryは何故動くのか
Cloud Foundryは何故動くのか
Kazuto Kusama
HDFSのスケーラビリティの限界を突破するためのさまざまな取り組み | Hadoop / Spark Conference Japan 2019 #hc...
HDFSのスケーラビリティの限界を突破するためのさまざまな取り組み | Hadoop / Spark Conference Japan 2019 #hc...
Yahoo!デベロッパーネットワーク
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
AWS CognitoからAuth0への移行パターン4つ
AWS CognitoからAuth0への移行パターン4つ
株式会社スタジオメッシュ
ChatGPTのビジネス活用とセキュリティ
ChatGPTのビジネス活用とセキュリティ
Daisuke Masubuchi
Hadoop ~Yahoo! JAPANの活用について~
Hadoop ~Yahoo! JAPANの活用について~
Yahoo!デベロッパーネットワーク
La actualidad más candente
(20)
画像ベース異常検知Amazon Lookout for Visionを使ってみよう
画像ベース異常検知Amazon Lookout for Visionを使ってみよう
GitHubで雑誌・書籍を作る
GitHubで雑誌・書籍を作る
GraphQLのsubscriptionで出来ること
GraphQLのsubscriptionで出来ること
ChatGPTは思ったほど賢くない
ChatGPTは思ったほど賢くない
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
ストリーム処理プラットフォームにおけるKafka導入事例 #kafkajp
Rest ful api設計入門
Rest ful api設計入門
シングルサインオンの歴史とSAMLへの道のり
シングルサインオンの歴史とSAMLへの道のり
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
SQLアンチパターン - 開発者を待ち受ける25の落とし穴 (拡大版)
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
Cloud Foundryは何故動くのか
Cloud Foundryは何故動くのか
HDFSのスケーラビリティの限界を突破するためのさまざまな取り組み | Hadoop / Spark Conference Japan 2019 #hc...
HDFSのスケーラビリティの限界を突破するためのさまざまな取り組み | Hadoop / Spark Conference Japan 2019 #hc...
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
AWS CognitoからAuth0への移行パターン4つ
AWS CognitoからAuth0への移行パターン4つ
ChatGPTのビジネス活用とセキュリティ
ChatGPTのビジネス活用とセキュリティ
Hadoop ~Yahoo! JAPANの活用について~
Hadoop ~Yahoo! JAPANの活用について~
開発環境をVagrantからdockerに移行してみた
1.
開発環境を Vagrantからdockerに 移行してみた 雑兵MeetUp #6 Tsukasa Arima(@pyar6329)
2.
Tsukasa Arima(@pyar6329) ・バックエンドエンジニア ・Ruby on
Rails好き ・今年某会社に入社したばかり ・でもフロントエンドもやってるよ
3.
アプリ開発しよう よっしゃ、環境構築や!
4.
アプリ開発する前に つらい
5.
特徴 ・仮想マシン ・設定の自動化 ・チーム間共有 vagrant
6.
だめなとこ ・起動遅い ・プロビジョニング遅い vagrant
7.
docker ・コンテナ ・小さく閉じた環境 ・windows, mac対応
8.
dockerが速い理由 Guest OS Hypervisor Host OS/Kernel Hardware Apps
Apps Apps Host OS/Kernel Hardware container Apps container Apps container Apps
9.
dockerが速い理由 ・ベースのイメージ ・機能追加毎に重ねていく ・同時にダウンロード
10.
dockerが速い理由 ・先にimageを作っておく ・imageをクラウドに保存 ・実行時にダウンロード
11.
速度比較 vagrant docker 起動速度 18分
3分 容量 500MB~1GB 10~200MB
12.
・速い ・軽い ・本番でも使える ・便利 結論
Notas del editor
みなさん、webアプリ開発していたことありますか? 一般的には、Ruby on railsやexpressなど、フレームワークを用いて開発することが多いと思います。
でも開発するときに色々なミドルウェアが必要になると思います。例えばRuby on railsの場合、フロントエンドではruby, postgresql、webサーバであるnginx、最近ではフロントエンドの部分にnodejsやgulpを用いてコンパイルしたりします。
じゃあ仮想マシン使ってみようと考えます。最近だと開発環境にvagrantを使っている人が多いと思います。これはvagrantfileと呼ばれるものを用いて仮想マシンを作成し、環境を構築します。チーム間での共有がすぐにできるので便利です。
でもvagrantを使っていても問題があります。それは色々遅いことです。例えば起動が遅く、OSのimageをダウンロードするのに時間がかかります。そして共通の設定を作るためにshellscriptやansibleを用いたりもしますが、これも時間がかかります。
じゃあ最近聞くdockerはどうなんだろうと思って使ってみました。dockerはコンテナとよばれるものを用いて仮想環境を構築します。最近ではdocker for macやdocker for windowsと呼ばれるものが公開され、簡単に実行することができるようになりました。
内部構造を比較すると、ゲストOSが存在しません。dockerはvagrantと違ってrailsだったらrailsコンテナ、mysqlだったらmysqlコンテナと役割ごとに分離して実行します。その役割ごとにimage(vagrantでいうbox)を作成します。
じゃあそのdockerのimageはどうなっているかというと、ベースとなるOSのイメージを元に作成していきます。例えばdebianのOSを元に、imageを追加していきます。imageを作成するごとにレイヤーがどんどんつらなっていき、実行時にはこのレイヤーが並列にダウンロードされていきます。
イメージを作成するためには、Dockerfileと呼ばれるものを先に作成します。これを用いてビルドしたものをdocker imageのクラウドサービスにアップロードします。つまりvagrantのansibleやshellscriptがこの時点で実行されるため、そのぶん実行時にかかる時間が減ります。
実際に比較してみると、このようになっています。dockerは最も小さいもので20MBしかないため、イメージのダウンロードが速く、実行も速いです。
Descargar ahora