19
重大発表

爆速プレビュープロキシ pool

  • Upload
    mookjp

  • View
    8.808

  • Download
    3

Embed Size (px)

Citation preview

重大発表�

ボタンを押さない

の開発に成功!!�

爆速プレビュープロキシ�

mookjp 株式会社リクルートテクノロジーズ

できること�http://<コミットハッシュやブランチ名>.pool.dev/ �

http://master.pool.dev/ とか http://a54db9.pool.dev/�

つかいかた (Vagrantで試す場合)�

1.  WebアプリケーションのGitリポジトリを用意 2.  このリポジトリのルートにアプリケーションのコンテ

ナを起動させるためのDockerfileを置く –  travis.ymlみたいな感じでDockerfileを置く

3.  https://github.com/mookjp/pool からcloneして付属のVagrantfile内に(1)のURLを指定

4.  vagrant dns --install 5.  vagrant up ※http://qiita.com/mookjp/items/ed5961589428238d610b に詳しく書きました�

どこでも使える�

例はVagrantでしたが DNSを用意すればどこでも使えます�

レビュー時に画面も確認�

Pull Requestに反応してURLを貼るbot付き�

poolのしくみ�

ReverseProxy

mod_mruby hook�

Docker daemon�

pool container

dev (b78e6c)

Git repository�

1. コミットに対応するコンテナがあるか確認�

master (ab2ca4)�

poolのしくみ�

ReverseProxy

mod_mruby hook�

Docker daemon�

pool container

master (ab2ca4)

dev (b78e6c)

Git repository�

2. なければリポジトリからソースを取得し Dockerfileを元にコンテナを作成�

poolのしくみ�

ReverseProxy

mod_mruby hook�

Docker daemon�

pool container

master (ab2ca4)

dev (b78e6c)

Git repository�

※ビルド中はログをクライアントに流す�

poolのしくみ�

ReverseProxy

mod_mruby hook�

Docker daemon�

pool container

master (ab2ca4)

dev (b78e6c)

Git repository�

※ビルド中はログをクライアントに流す�

poolのしくみ�

ReverseProxy

mod_mruby hook�

Docker daemon�

pool container

master (ab2ca4)

dev (b78e6c)

Git repository�

3. コンテナがあればforward�

dev (b78e6c)�

Dockerでやってみた理由�

1. 安い –  VMよりも手軽

2. 速い –  キャッシュをうまく利用して高速に環境を作

成できる –  クリーンな環境を毎回素早くつくるのによい

3. うまい –  自由度が高い�

派生プロジェクトも企画中�

https://prevs.io/�

今までのQA環境作成�

これからのQA環境作成�

関連記事�

•  mod_mrubyとDockerを使ってプレビュー環境を作成するプロキシサーバを作った ‒ Qiita –  http://qiita.com/mookjp/items/ed5961589428238d610b

•  Docker(pool)を用いたプレビュー環境を検証する(railsアプリ開発チームの活用例) ‒ Qiita –  http://qiita.com/k-shogo/items/cc47e448fa0c07ac3189

•  人間とウェブの未来 - Gitのコミット単位で動的にDockerイメージをデプロイするプロキシサーバpool –  http://blog.matsumoto-r.jp/?p=4541

お試しください�

Dockerやりましょう http://recruit-tech.co.jp/recruitment/mid-career.html�