You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Immutable Infrastructure Conference #1 : ATND でLTしてきた。 内容はきれいにゴミを捨てましょうという話以上のものは特にない。 背景の説明が少し雑だったので補足すると、Jenkins のジョブスクリプトで、git push する度に docker run していたら ゴミがどんどんたまっていったという感じ。 1 push あたり、アプリコンテナ、DBコンテナとか合わせて3コンテナぐらい起動してるから開発が活発だと、どんどんゴミがたまる。 さらに補足すると、Device mapper がらみのゴミは、aufs 使うとかなり解決できそうな感じはしてる。 (Device mapper だとブロックデバイスレベルでイメージ差分を表現するので、デバイス毎(差分)毎に mount が走るみたいな実装になってるけど、aufs だとファイルシステム単位で複数の
……というのを書いてみた。boot2docker によって OSX でもかなり簡単に Docker が使えるようになり、開発に必要なミドルウェアを用意する助けになってくれるけれど、いちいち -p オプションでポート番号を指定するまでもなく、ミドルウェア(コンテナ)によって決まったポートが割り当てられていれば十分、ということもよくある。 そこでこの forward2docker。 以下のようにすると、Dockerfile からイメージを作成し、走らせて、EXPOSE されているポート番号 + 10000 番を割り当てて待ち受けてくれる。 % curl -LO https://raw.github.com/motemen/forward2docker/master/forward2docker % chmod +x forward2docker % ./forward2docker path/
Dockerの操作は、コマンドからだけではなく、リモートAPI経由でもできます。 APIの説明はここにあります。 http://docs.docker.io/en/latest/api/docker_remote_api/ 今回は、このAPIを使ってコンテナを簡易的に操作できるWebアプリを作ってみました。 とりあえず実装した機能は、 稼働中コンテナの一覧 稼働中コンテナの停止 コンテナの立ち上げ です。 作ったもの こんな感じの見た目です。 画像を見れば分かると思いますが、操作はこれ1ページで完結しています。 コード Githubにあげました。 https://github.com/kurochan/docker-panel 処理はほぼweb.rbで行っていて、あとはhtmlのレンダリングくらいです。 コードは全部で50行ないくらいです。 Sinatraを使うとシンプルに作れていいですね
にゃんぱす〜 最近Dockerにどっぷりなんですが、Dockerについて色々地雷Tipsがあるのでそれをベストプラクティス風にまとめてみました。 Dockerコマンドが動いたけど、これからプロジェクトのDockerfileを書くようにしてみたいんだけど。。。みたいな人にオススメ。 インストール編 1. MacでDockerのインストールで詰まった なんかよくわからないエラーが出てインストール出来ないんだけど>< versionを確認して最新の環境にしましょう。とくにxCodeとVirtualBoxとvagrantのバージョンは最新のものでないとダメです。 $ brew -v Homebrew 0.9.5 $ VirtualBox --help Oracle VM VirtualBox Manager 4.3.6 (C) 2005-2013 Oracle Corporation All ri
最近Dockerをいろいろ触ってみていて以下の様な記事を書いたりしました。 Dockerで立てたコンテナにsshで接続する - $shibayu36->blog; serfとDockerでクラスタを組んでみる - $shibayu36->blog; 本番環境のBlue-Green Deploymentの仕組みのプロトタイプを作っていた - $shibayu36->blog; Docker, Mesos, Sensu等を利用したBlue-Green Deploymentの仕組み - $shibayu36->blog; 社内用Docker Registryを立てる - $shibayu36->blog; docker commitでCMDやENVなどを指定する - $shibayu36->blog; docker inspectでDockerコンテナの情報を取得する - $shibayu36-
コミケの列に並んでたあたりのころから Docker 本格的に使ってます。このサイトもさっき Docker でデプロイするような感じにしました。 Docker の利点と欠点で 開発環境の配布が容易にできる プロダクトのデプロイにつかうにはなにかとキツい みたいな意見をわりと頻繁にみかけるのですが、逆じゃねえかと思ってます。これ開発環境の配布に使うの無理でしょ。各コンテナ使い捨て前提なんだし。 Docker をデプロイに使う際の問題点としては以下があります Dockerfile に 42 個しか命令かけないみたいなやつ なんだかんだでコンテナのビルドに時間がかかる コンテナの管理とかどうするのか リバースプロキシの設定とかどうするのか 一個目に関しては頑張ってください。僕はセットアップ用やデプロイ用のシェルスクリプトを ADD して RUN させるようにしてます。シェルスクリプトセットアップ
serverspecとdocker-apiでDockerfileをTDD いくつかDockerfileを書いてきた.今書いているDockerfileは短くてシンプルなものばかりだが,もっと長く複雑化した時に不安になりそうだ.不安を解消するにはテストしかない.さらにテスト駆動的にDockerイメージを開発できたら素敵だ.つまり, テストを書く Dockerイメージを作成して,テストの実行 -> RED Dockerfileの編集 Dockerイメージを作成して,テストの実行 -> GREEN テストを… の流れができるとよい. ということで,RSpecを使ってTDDでDockerfileを開発するというのをやってみた,tcnksm/docker-rspec.今回実現したのは以下. Docker Remote APIでDockerfile特有のコマンド(e.g, CMDやEXPOSE)のRSp
このときにやった可視化部分の話。急いで作ったのでいろいろ雑な部分が多い。 開発合宿でDockerとMesosを使っていい感じにリソース提供とデプロイするやつを作ってた - wtatsuru's blog はじめに 元のやつから内部情報を削ったサンプルを置いておきます。適当にサーバ名など修正すれば使えるかもしれません。 https://github.com/tatsuru/docker-sample-app 全体の仕組みについてはここの図がわかりやすいと思います Docker + Mesos + Marathon + Graphite + Fluentd + Sensuを組み合わせたデプロイ管理ツールの話 - ゆううきブログ やりたいこと 目的はアプリケーションの現状を俯瞰できるダッシュボードを作ること。 それぞれのDockerコンテナは短命なので、下記の情報をうまく集約してやる必要がある。
本番環境のBlue-Green Deploymentの仕組みのプロトタイプを作っていた - $shibayu36->blog; 開発合宿でDockerとMesosを使っていい感じにリソース提供とデプロイするやつを作ってた - wtatsuruの技術方面のブログ Docker + Mesos + Marathon + Graphite + Fluentd + Sensuを組み合わせたデプロイ管理ツールの話 - ゆううきブログ この辺に書いたとおり、id:wtatsuru, id:y_uuki, id:hagihala と一緒に、DockerやMesosなどを利用してBlue-Green Deploymentのプロトタイプのようなものを作っていた。この前は非常にざっくりと書いただけだったので、もう少し中身に突っ込んで書いてみる。かなり長くなったので時間があるときにでもどうぞ。 デプロイや運用の
開発合宿でDevOps界隈やモニタリング界隈で流行りのツールを組み合わせてBlue Green Deploymentできる何かを作りました。 同じチームで開発したid:shiba_yu36 先生やid:wtatsuru 先生が既にブログを書いてますが、自分の視点で書いてみます。(13/12/24追記: より詳細な内容が新規に書かれたのでリンク先を入れ替えました) Docker, Mesos, Sensu等を利用したBlue-Green Deploymentの仕組み - $shibayu36->blog; Docker コンテナにアプリケーションを立てて Graphite でいい感じに可視化するまで - wtatsuru's blog 僕は主に、各ツールから得られる情報をまとめて管理し、デプロイを実行するデプロイ管理ツールを作成していましたので、それについて書きます。 普段は運用の修行をして
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog LT の中で触れた環境を構築するデモコードを Vagrantfile にまとめて GitHub においていますのでよければ触ってみてください。ジョブ登録済の Jenkins が立ち上がるので全く同じ環境を試してもらえます。 yahoojapan/jenkins-with-docker-demo LT は5分でざっと流してしまったため、このエントリで補足します。 ジョブ実行毎にクリーンな環境がほしい 特に説明の必要もなく普段 Jenkins を使っていればジョブ毎にクリーンな環境がほしいと思うはずです。スレーブノードをジョブ毎に新規でインスタンスを立ちあげて実行することもできますが インスタンスの作成、起動はそれなりの時間がかかりま
Docker 0.6.5: name your containers, link them together, selectively publish ports, and more Today we’re happy to announce Docker 0.6.5. Don’t be fooled by the version number: this is a significant release! Think of it as a preparation for 0.7, which will be even more significant. In addition to numerous bug fixes, this release introduces container naming, links between containers, better host inte
docker_cheat.md Docker 虎の巻 Fork from Docker cheat sheet 実際にコマンドを試したい場合は、すぐにDockerを試したい人のための基礎コマンドを参照 何故Dockerを使うべきか Why Should I Care (For Developers) "Dockerが面白いのはシンプルな環境に隔離性と再現性をもたらしてくれることだ.ランタイムの環境を一度作れば、パッケージにして別のマシンでも再利用することできる.さらに,すべてはホスト内の隔離された環境で行われる(VMのように).最も素晴らしい点は,シンプルかつ高速であることだ." Dockerで使われている技術 仮想環境構築に docker を使う LXC "Xen とか VirtualBOX みたいにホスト内に仮想マシンを立ち上げるんじゃなくて、ホスト内の隔離された環境で仮想マシンを動か
はじめに JenkinsでJVM上で動かない言語(PythonやRubyなど*1)を使っていると、ジョブごとに環境が分離されていないことが問題になる場合があります。 Pythonにおける virtualenv やRubyにおける Bundler を使えば、ジョブごとに利用するライブラリを分離することができます。しかし、C拡張ライブラリをインストールするためには、ジョブが実行されるノードに開発用のファイルが存在している必要があります。例えば、Pythonモジュールの lxml のインストールにはlibxml2やlibxsltの開発用ファイルが必要です。 *2 このようなファイルが必要になるたびにJenkinsのノードにインストールするのはスマートじゃないですし、実行に必要な環境はコードの形で明文化されているべきです。 ジョブでaptやyumを使ってインストールするのもセキュアじゃないですし、
Dockerで継続的インテグレーション Dockerで複数バージョンのrubyがインストールされたイメージを作るを使って,ローカルでTravis CI的なビルドテストを実現する方法を書く. 準備 (OS X) Vagrantを使う.バージョン1.4からはDockerのprovisioningに対応してるのでそれを使う. Download Vagrant - Vagrantより.dmgをダウンロードしてきてインストール. インストールしたら,rubyプロジェクトに移動して以下を実行する. vagrant init precise64 http://files.vagrantup.com/precise64.box Vagrantfileを以下のように編集する.ここでは,docker-rbenvで作成した,複数バージョンのruby (1.8,7と1.9.3,2.0.0)とそれぞれにbundle
インフラ系技術の流れ - Gosuke Miyashita 今さら聞けない Immutable Infrastructure - 昼メシ物語 2014年のウェブシステムアーキテクチャ - stanaka's blog http://rebuild.fm/25/ この辺りを読んだ。自分の中ではImmutable Infrastructureについてはここ一週間で調べただけであり、解説などは出来ないが、とりあえず自分用のメモとして自分の思ったことなどを書いていく。 コンテナベースのデプロイ Dockerなどが出てきたことにより、Dockerのイメージをそのままアップロードし、それを本番でも動かすということが出来そうというのが面白かった*1。こういう風なフローになるとすると、これまでのデプロイ手順とは全く違うようになりそう。 これまでのデプロイと、コンテナベースのデプロイ これまでのデプロイは
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く