SlideShare una empresa de Scribd logo
1 de 23
Descargar para leer sin conexión
Dockerを活用したリクルートグループ開発基盤の構築
February 7, 2015
!
Naohiro Yoshida
Recruit Technologies Co.,Ltd.
∼基幹システム開発におけるDocker活用事例∼
自己紹介
(def	
  me	
  {:name	
  "吉田	
  尚弘"	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  :age	
  "33"	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  :job	
  "アーキテクト"	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  :company	
  {:name	
  "リクルートテクノロジーズ"	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  :joined-­‐at	
  "2014/03/01"}	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  :favorite-­‐lang	
  ["Java"	
  "Clojure"	
  "Go"]})
本日の内容
DockerとClojureを使って基幹システムの開発環境構築

リードタイムを99%削減した話
 
リクルートの事業領域
■ 就職や結婚、出産/育児といったライフイベント領域
■ 旅行やグルメ、美容などのライフスタイル領域
リクルートポイントとは
■ リクルートの各サイトで共通利用可能なIDとポイント
■ Pontaポイントとの相互交換も可能でリクルート外でも利用可能
リクルートポイントとは
■ リクルートの展開するサイトの会員数千万人のID/PWD等の重要情報を管理
■ グループ内の多くのサイトと連携
・・・
ミッションクリティカルなシステム
リクルートポイントの開発
■ 基幹システムにも関わらず最低でも月に一回はリリース
■ サイト側のアプリ用の専用の環境を提供(40面以上)
内部環境 サイト向け開発環境 本番環境
2月リリース向け
1月リリース向け
3月リリース向け
・・
・・
・・
upgrade
upgrade
ここがカオス
・・・
何が課題なのか
■ 専用の担当者が常時張り付き複数のチームが相互に連携し合っている
■ 環境をクリーニングしてアプリを入れ替えるのに10日程度のリードタイム
運用T
DBA
AP基盤T
開発T
war war war
war
10日後環境利用申請
WEB/APサーバ
バッチサーバ
DBサーバ
この問題を解決するシステムを作ることにした
環境自動発艦システムakagi
■ 利用者が必要な情報を入力してLaunchボタン押すだけで環境提供
jobnet-­‐20141120.jar
erd-­‐20141120.jar
REPOSITORY	
  	
  TAG	
  	
  	
  	
  	
  	
  	
  	
  	
  IMAGE	
  ID	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  
app-­‐a	
  	
  	
  	
  	
  	
  	
  20141120	
  	
  	
  	
  8534598b6795	
  	
  	
  	
  	
  
app-­‐b	
  	
  	
  	
  	
  	
  	
  20141120	
  	
  	
  	
  08f230efe1f0
exp
UI
Docker
Agent
Job
Agent
DB
Agent
コンテナ群
コンテナ 1
コンテナ 2
コンテナ
ビルド時
利用者
環境利用時
開発者
SCM
10日かかっていた環境提供を10分程度まで短縮
構築にかかっていた人手を排除し90%のコストを削減
container container container container
docker daemon
Dockerとは
■ Linuxのコンテナ技術を利用して、隔離空間(コンテナ)を作成してプロセスを実行
■ ファイルシステム/ネットワークなどはコンテナごとに独立している
■ ハイパーバイザと異なり、ゲストOSを起動するわけではないため高速に起動可能
環境をコンテナごと全て入れ替えたり
同じ設定の環境を複数高速に起動したり削除したりするのに向く
OS
172.20.10.1 172.20.10.2 172.20.10.3 172.20.10.4
1コンテナ複数
プロセス可 プロセスごとにコンテナを分割しコンテナ間で連携することも可
参考
container
container
Dockerとは
■ Dockerfileを作成してコンテナのイメージを作成
■ 作成したイメージはDockerがインストールされていれば動作可能
■ インフラの専門的な知識がないアプリケーションエンジニアでも記述可
FROM	
  centos65	
  
!
#	
  Java	
  8	
  
RUN	
  yum	
  install	
  -­‐y	
  wget	
  unzip	
  curl	
  
ADD	
  download.sh	
  download.sh	
  
RUN	
  sh	
  download.sh	
  
RUN	
  rpm	
  -­‐ivh	
  jdk-­‐8u20-­‐linux-­‐x64.rpm	
  
RUN	
  export	
  JAVA_HOME=/usr/java/jdk1.8.0_20	
  
	
  	
  
#	
  Tocmat	
  7	
  
ENV	
  CATALINA_HOME	
  /usr/local/tomcat	
  
ENV	
  PATH	
  $CATALINA_HOME/bin:$PATH	
  
RUN	
  mkdir	
  -­‐p	
  "$CATALINA_HOME"	
  
WORKDIR	
  $CATALINA_HOME	
  
ADD	
  tomcat	
  /usr/local/tomcat	
  
ADD	
  start.sh	
  /usr/bin/start.sh	
  
	
  	
  
EXPOSE	
  8080	
  
CMD	
  sh	
  /usr/bin/start.sh
docker -d
docker build
Dockerfile
例)centos7の場合のimage保存先(default)	
  
/var/lib/docker/	
  
	
   -­‐	
  devicemapper/devicemapper/	
  
	
   -­‐	
  graph/${image_id}
image作成
docker run
container
コンテナ起動
アプリケーションエンジニアが開発作業としてコンテナを作成し
環境ごと構築することができる
参考
Clojureとは
■ Lich Hickyが開発したJVMで動作するLisp方言の関数型言語
■ 動的型付け/Immutable
参考
;指定した名字の最大年齢算出する関数	
  
(defn	
  get-­‐max-­‐age	
  
	
  	
  [name]	
  
	
  	
  (-­‐>>	
   (repeatedly	
  100	
  new-­‐person)	
  	
   	
   ;Personを100個生成	
  
	
  	
  	
  	
  	
  	
  	
   (filter	
  #(=	
  (:name	
  %)	
  name))	
  	
  	
   ;名字でフィルター	
  
  	
  	
  	
  (map	
  #(:age	
  %))	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
   	
   ;age属性のみ取得	
  
	
  	
  	
  	
  	
  	
  	
   (apply	
  max)))	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
   ;最大値取得	
  
!
;指定した名字に対応して部分適用	
  
(def	
  灬╹ω╹灬	
  (partial	
  get-­‐max-­‐age	
  "sato"))	
  
(def	
  ಠ_ಠ	
  	
  (partial	
  get-­‐max-­‐age	
  "tanaka"))	
  
!
;それぞれ出力	
  
(灬╹ω╹灬)	
  	
  	
  
(ಠ_ಠ)
UI
akagiのアプリケーションアーキテクチャ
Java 8
Clojure 1.6
ring-server
DB Agent
Java 8
Clojure 1.6
core.async
Batch Agent
Java 8
Clojure 1.6
http-kit
core.async
Docker Agent
Java 8
Clojure 1.6
http-kit
core.async
■ 全面的にClojureで開発
■ Web UIから環境構築に必要な命令をAgentに配信
■ Agentは自分のタスクを終了すると次の処理を行うエージェントに命令送信
http
http
http
http http
http
http-kit
Web/App Batch
DB
!
Container
!
Container
全てをDockerにしないのか?
■ DBサーバはOracle EE RACが必要で大量環境のコンテナに向いていないと判断
■ 加えてJP1はそもそも導入予定のOSに対応していないなどがネック
!
Data Volume Container
REDO CTRLSPFILE DATA
INSTANCE
ASM
LISTENER
INSTANCE
ASM
Node #1 Node #2
・数GBのメモリ 環境数
・インスタンス起動時間
JDBC
LISTENER
Oracle EE RAC JP1
JP1 Manager / Agentともに
ホストOSがベンダー保証対象外
container
Application
Cent OS 6.5
Cent OS 7
HostのKernelが叩かれるのでリスクはある
※DockerのホストOSはKernel 3.8以上が推奨
#	
  uname	
  -­‐r	
  
3.10.0-­‐123.6.3.el7.x86_64
環境提供までの流れ (Docker部分)
UI
Docker
Agent
Repository
docker -d
Docker
Registry
docker
contaiiner
build/run
④Repositryからサイト別の設定情報を
取得してDockerfileを自動生成する
ベースイメージはアプリビルド時に作っ
ておいたものを使用
②起動情報
・アプリバージョン
・各種設定値
③空き環境を判別してDocker操作用の
エージェントにメッセージ送信
⑤アプリ数分Dockerfileをビルドしてコンテナ起動
Dockerfile
利用者
docker
contaiiner
docker
contaiiner
①ベースとなるイメージは作成しておく
アプリ1
Module
Container
Web/App
Container
App Server
Web Server
今回のDockerコンテナの構成
■ コンテナを役割ごとに複数に分割
■ サービスを起動するコンテナとモジュール/ログ/設定を配備するコンテナを分割
■ Web / Appは同一のコンテナ
■ モジュール、ログ、設定用コンテナはData Only Container
Config Container Log Container
volumes from
1環境あたりのコンテナセット
アプリ2
Module
Container
Web/App
Container
App Server
Web Server
アプリN
Module
Container
Web/App
Container
App Server
Web Server
HOST
Data Only Container(Pattern)
■ データのみを格納したコンテナで他のコンテナとデータ共有が可能
■ サービス用コンテナと分割することで変更やバックアップが容易になる
■ Data Only Contianerが停止してもサービスには影響がない
FROM	
  busybox	
  
VOLUME	
  /var/log/	
  
CMD	
  /bin/sh
Data Volume
Container
Container
docker	
  run	
  -­‐-­‐volumes-­‐from	
  data	
  service
/var/lib/docker/vfs/dir/${volume-­‐id}	
  
-­‐rw-­‐r-­‐-­‐r-­‐-­‐	
  1	
  root	
  root	
  4444	
  	
  2月	
  	
  1	
  23:34	
  catalina.log
docker	
  build	
  -­‐t	
  log	
  
docker	
  run	
  -­‐-­‐name	
  data	
  log
Dockerfile
参考
アプリ1 アプリ2
この構成のメリット
Web / App
Container
Module
Container
Config Container
Log Container
ミドルウェア

パッチ当て
ログ確認
緊急設定変更
■ 変更頻度の異なるコンテナを別々にすることでコンテナ変更時の影響を局所化
■ 関心のあるコンテナのみを操作すればよい
凡例 docker build / docker run docker attach / docker exec
Web / App
Container
Module
Container
アプリ1のみ起動
App engineer
アプリ
バージョンアップ
設定変更
Infra engineer
akagi
他の構成も検討したが
■ 全部入りコンテナだと使い勝手はよいが再作成時の入れ替えなどが課題
■ 1プロセス1コンテナだとコンテナ数が無駄に増えすぎる
Container
Web Server
(アプリ1)
App Server
Web Server
(アプリ2)
App Server
SSHD Monit
1環境1コンテナ 1プロセス1コンテナ
アプリ1
Module Container
App Server
Container
Config Container
Web Server Container
○ 環境単位の移動は容易ではある
△ 部分的な更新時の再作成
△ アプリ単位の提供が困難
○ 原則の構成ではある
△ 数が多いためコンテナが複雑になる
Log Container
link
アプリ2
Module Container
App Server
Container
Config Container
Web Server Container
Log Container
link
!
■ Dockerを活用して環境構築リードタイム99%削減
■ 特定の人間に依存していた作業を撤廃し属人性排除
■ コスト90%削減見込み
!
まとめ
発見
!
■ 重厚なシステムにおいてはDockerだけでは解決が困難な箇所がある
■ Docker内とDocker外の資産(ERD/JOBなど)の整合性の担保
■ Dockerコンテナの構成は運用を考慮して最適な設計を
最後に
■ リクルートは様々なサービスを持っている会社です
■ リクルートはビジネスの会社でリクルートテクノロジーズは技術の会社
■ 様々なサービスを経験したり新しい技術を適用してみたい方募集中です
!

Más contenido relacionado

La actualidad más candente

Dockerの事例紹介
Dockerの事例紹介Dockerの事例紹介
Dockerの事例紹介
Hiroki Endo
 

La actualidad más candente (20)

Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
 
Moq & Fakes Framework を使った実践的ユニットテスト - BuildInsider
Moq & Fakes Framework を使った実践的ユニットテスト - BuildInsiderMoq & Fakes Framework を使った実践的ユニットテスト - BuildInsider
Moq & Fakes Framework を使った実践的ユニットテスト - BuildInsider
 
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
 
BuildKitの概要と最近の機能
BuildKitの概要と最近の機能BuildKitの概要と最近の機能
BuildKitの概要と最近の機能
 
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
0から始めるコンテナの学び方(Kubernetes Novice Tokyo #14 発表資料)
 
Dockerの事例紹介
Dockerの事例紹介Dockerの事例紹介
Dockerの事例紹介
 
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
 
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
 
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
[AC05] マイクロサービスは分割がキモ!基幹システムのためのドメイン駆動設計
 
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
AirLab導入でテストコストの大幅削減と品質向上! 数十台の端末を一斉に全自動テストできる社内DeviceFarmについてご紹介
 
ARマーカーを利用したHoloLens同士の位置合わせ
ARマーカーを利用したHoloLens同士の位置合わせARマーカーを利用したHoloLens同士の位置合わせ
ARマーカーを利用したHoloLens同士の位置合わせ
 
がっつりMongoDB事例紹介
がっつりMongoDB事例紹介がっつりMongoDB事例紹介
がっつりMongoDB事例紹介
 
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
Dapr × Kubernetes ではじめるポータブルなマイクロサービス(CloudNative Days Tokyo 2020講演資料)
 
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
GraalVMのJavaネイティブビルド機能でどの程度起動が速くなるのか?~サーバレス基盤上での評価~ / How fast does GraalVM's...
 

Destacado

Destacado (20)

Docker webinar 20170426−01
Docker webinar 20170426−01Docker webinar 20170426−01
Docker webinar 20170426−01
 
DevOpsを実践し成功に導くための ”はじめの一歩” 20171003
DevOpsを実践し成功に導くための ”はじめの一歩” 20171003DevOpsを実践し成功に導くための ”はじめの一歩” 20171003
DevOpsを実践し成功に導くための ”はじめの一歩” 20171003
 
鯨物語~Dockerコンテナとオーケストレーションの理解
鯨物語~Dockerコンテナとオーケストレーションの理解鯨物語~Dockerコンテナとオーケストレーションの理解
鯨物語~Dockerコンテナとオーケストレーションの理解
 
AWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティスAWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティス
 
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
【HinemosWorld2015】A1-3_コンテナ技術Dockerの導入事例と完全運用自動化
 
Docker国内外本番環境サービス事例のご紹介
Docker国内外本番環境サービス事例のご紹介Docker国内外本番環境サービス事例のご紹介
Docker国内外本番環境サービス事例のご紹介
 
DockerCon SF 2015: Beyond CI to Production Scale PaaS with Docker
DockerCon SF 2015: Beyond CI to Production Scale PaaS with DockerDockerCon SF 2015: Beyond CI to Production Scale PaaS with Docker
DockerCon SF 2015: Beyond CI to Production Scale PaaS with Docker
 
Infrastructure as CodeでReNom環境構築入門
Infrastructure as CodeでReNom環境構築入門Infrastructure as CodeでReNom環境構築入門
Infrastructure as CodeでReNom環境構築入門
 
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
さくらのDockerコンテナホスティング-Arukasの解説とインフラを支える技術(July Tech Festa 2016 『IoTxAIxインフラ時代...
 
Docker 1.12 & Swarm Mode Introduction ~ Docker の新しい技術と swarm モードの紹介
Docker 1.12 & Swarm Mode Introduction ~ Docker の新しい技術と swarm モードの紹介Docker 1.12 & Swarm Mode Introduction ~ Docker の新しい技術と swarm モードの紹介
Docker 1.12 & Swarm Mode Introduction ~ Docker の新しい技術と swarm モードの紹介
 
Docker Community Edition & Enterprise Edition
Docker Community Edition & Enterprise EditionDocker Community Edition & Enterprise Edition
Docker Community Edition & Enterprise Edition
 
paizaのオンラインジャッジを支えるDockerとその周辺
paizaのオンラインジャッジを支えるDockerとその周辺paizaのオンラインジャッジを支えるDockerとその周辺
paizaのオンラインジャッジを支えるDockerとその周辺
 
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
【第11回 クラウドごった煮(コンテナ勉強会)】Docker networking tools
 
8a1#19[はじめてのdocker] 公開版
8a1#19[はじめてのdocker] 公開版8a1#19[はじめてのdocker] 公開版
8a1#19[はじめてのdocker] 公開版
 
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
いまさら聞けないDocker - 第5回コンテナ型仮想化の情報交換会@大阪
 
Docker with RHEL7 技術勉強会
Docker with RHEL7 技術勉強会Docker with RHEL7 技術勉強会
Docker with RHEL7 技術勉強会
 
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
Docker/Aarukas入門ハンズオン資料~第1回さくらとコンテナの夕べ #さくらの夕べ 番外編
 
捕鯨!詳解docker
捕鯨!詳解docker捕鯨!詳解docker
捕鯨!詳解docker
 
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
Docker on RHEL & Project Atomic 入門 - #Dockerjp 4
 
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
今さら聞けない人のためのDocker超入門 – OpenStack最新情報セミナー 2015年4月
 

Similar a Dockerを活用したリクルートグループ開発基盤の構築

わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
normalian
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Kazumi Hirose
 

Similar a Dockerを活用したリクルートグループ開発基盤の構築 (20)

ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方
 
2010年11月27日土曜日FlexUserGroup勉強会 第125回 京都 Flex & Google App Engine for Java & ...
2010年11月27日土曜日FlexUserGroup勉強会 第125回 京都  Flex & Google App Engine for Java & ...2010年11月27日土曜日FlexUserGroup勉強会 第125回 京都  Flex & Google App Engine for Java & ...
2010年11月27日土曜日FlexUserGroup勉強会 第125回 京都 Flex & Google App Engine for Java & ...
 
世界をすこしだけ前に進めるということ
世界をすこしだけ前に進めるということ世界をすこしだけ前に進めるということ
世界をすこしだけ前に進めるということ
 
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
わんくま同盟名古屋勉強会18回目 ASP.NET MVC3を利用したHTML5な画面開発~クラウドも有るよ!~
 
Use JWT access-token on Grails REST API
Use JWT access-token on Grails REST APIUse JWT access-token on Grails REST API
Use JWT access-token on Grails REST API
 
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみようNTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
 
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
サーバーレスのアーキテクチャパターンとそれぞれの実装・テストの勘所
 
運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか運用に自動化を求めるのは間違っているだろうか
運用に自動化を求めるのは間違っているだろうか
 
Webに今求められているレベル: HTML5 コントロールを利用した開発
Webに今求められているレベル: HTML5 コントロールを利用した開発Webに今求められているレベル: HTML5 コントロールを利用した開発
Webに今求められているレベル: HTML5 コントロールを利用した開発
 
Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...Building React, Flutter and Blazor development and debugging environment with...
Building React, Flutter and Blazor development and debugging environment with...
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
 
201312 scalr[oss] installation_idcf
201312 scalr[oss] installation_idcf201312 scalr[oss] installation_idcf
201312 scalr[oss] installation_idcf
 
SCALR OSS版のインストール手順のご紹介 20131204 01
SCALR OSS版のインストール手順のご紹介 20131204 01SCALR OSS版のインストール手順のご紹介 20131204 01
SCALR OSS版のインストール手順のご紹介 20131204 01
 
オトナのDocker入門
オトナのDocker入門オトナのDocker入門
オトナのDocker入門
 
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
AWS を活用して小さなチームで 世界で使われるサービスを運用する方法 - JAWS Days 2013
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
 
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
 
オープンソースカンファレンス osc 2014 関西@京都 ownCloud性能検証
オープンソースカンファレンス osc 2014 関西@京都 ownCloud性能検証オープンソースカンファレンス osc 2014 関西@京都 ownCloud性能検証
オープンソースカンファレンス osc 2014 関西@京都 ownCloud性能検証
 
Karateによる UI Test Automation 革命
Karateによる UI Test Automation 革命Karateによる UI Test Automation 革命
Karateによる UI Test Automation 革命
 

Más de Recruit Technologies

Más de Recruit Technologies (20)

新卒2年目が鍛えられたコードレビュー道場
新卒2年目が鍛えられたコードレビュー道場新卒2年目が鍛えられたコードレビュー道場
新卒2年目が鍛えられたコードレビュー道場
 
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学びカーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
カーセンサーで深層学習を使ってUX改善を行った事例とそこからの学び
 
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
Rancherを活用した開発事例の紹介 ~Rancherのメリットと辛いところ~
 
Tableau活用4年の軌跡
Tableau活用4年の軌跡Tableau活用4年の軌跡
Tableau活用4年の軌跡
 
HadoopをBQにマイグレしようとしてる話
HadoopをBQにマイグレしようとしてる話HadoopをBQにマイグレしようとしてる話
HadoopをBQにマイグレしようとしてる話
 
LT(自由)
LT(自由)LT(自由)
LT(自由)
 
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
リクルートグループの現場事例から見る AI/ディープラーニング ビジネス活用の勘所
 
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
 
リクルート式AIの活用法
リクルート式AIの活用法リクルート式AIの活用法
リクルート式AIの活用法
 
銀行ロビーアシスタント
銀行ロビーアシスタント銀行ロビーアシスタント
銀行ロビーアシスタント
 
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
リクルートにおけるマルチモーダル Deep Learning Web API 開発事例
 
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
 
ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後ユーザーからみたre:Inventのこれまでと今後
ユーザーからみたre:Inventのこれまでと今後
 
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
 
EMRでスポットインスタンスの自動入札ツールを作成する
EMRでスポットインスタンスの自動入札ツールを作成するEMRでスポットインスタンスの自動入札ツールを作成する
EMRでスポットインスタンスの自動入札ツールを作成する
 
RANCHERを使ったDev(Ops)
RANCHERを使ったDev(Ops)RANCHERを使ったDev(Ops)
RANCHERを使ったDev(Ops)
 
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイントリクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
リクルートにおけるセキュリティ施策方針とCSIRT組織運営のポイント
 
ユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイントユーザー企業内製CSIRTにおける対応のポイント
ユーザー企業内製CSIRTにおける対応のポイント
 
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアルリクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
リクルートテクノロジーズが語る 企業における、「AI/ディープラーニング」活用のリアル
 
「リクルートデータセット」 ~公開までの道のりとこれから~
「リクルートデータセット」 ~公開までの道のりとこれから~「リクルートデータセット」 ~公開までの道のりとこれから~
「リクルートデータセット」 ~公開までの道のりとこれから~
 

Dockerを活用したリクルートグループ開発基盤の構築