この記事はDockerに関する実験的な記事や,Buildpackを使ってHeroku AppをDocker Containerとして使えるようにする“building”の開発などで知られるCenturyLink Labsの “What is Docker and When To Use It”の翻訳です. Dockerとは何か?Dockerをどこで使うべきか?についてよく見かける記事とは違った視点から説明されています. 翻訳は許可をとった上で行っています. Dockerとは何でないか Dockerとは何かを説明する前に,Dockerは何でないかについて述べる.Dockerの否定形は何か?Dockerの制限は何か?Dockerが得意でないことは何か? DockerはLXCのようなLinux Containerではない DockerはLXCだけのラッパーではない(理論的には仮想マシンも管理でき
Sensuの管理をChefで行う場合、subscriptionsの設定をどうするか考えた結果 下記のようにtemplate側でまとめるという方法があるのかなと思ったのですが (attributesはrole to roleのみmergeされる。その際にnodeのattributesは破棄されてしまうので) 他に何か良い方法ありますかね。 もしくはそもそも私の認識に誤りがある可能性が高いので、 ご指摘頂ければありがたいです。 roles/web_foo.json "sensu": { "node_subscriptions": [ "web_foo" ] }, "run_list": [ "role[web]" ] { "name": "web", "description": "web", "json_class": "Chef::Role", "override_attributes":
kitchen-dockerでEC2の料金をかけず、高速にAmazon LinuxでのCookbookのテストを行う方法 2014.04.28 追記: ライセンスについてのご質問をいただいたので追記しました。 最近、Kitchen-dockerでCookbookのテストを流すようになり、 捗ってはいたのですが、 仕事ではCentOSとAmazon Linuxの両方を使うことがあり、 お互いRHEL互換で大体同じで通るとはいえ、 ちゃんと両方でテストしないといけないよな〜と思っていました。 でも、Amazon Linuxを使おうと思うと、 kitchen-ec2とかvagrant-awsとかで立ち上げる感じになって、 やっぱり仮想マシンの立ち上げが遅いんですよね。 あと、課金を気にしなきゃいけないのが一番やりにくい。 とりあえず、今やってるCookbookの充実&リファクタリングは早く終わら
Boxen使わなくても許されるのは2012年までだよね を書いたのも今は昔、1年間の運用の末にこの度Boxenを卒業しました。なぜBoxenをやめたのか、やめて今はどうしているのか、といった話を書きます。 Boxenのつらいところ ここで述べるBoxenの問題点の大部分は筆者のBoxenおよびPuppetに対する理解の低さが根底にあります。間違った使い方をしている可能性は十分にあり、適切に使っていればこのような問題は発生しないのかも知れません。しかしながら、深い理解がなければまともに使えないというのもどうかと思いますのでつらつらと並び立てたいと思います。 挙動を把握するのが難しい BoxenはPuppetの上で動作します。Puppetを便利に使うためのフレームワークみたいな位置づけだと思っています。 Rubyに詳しくなくても、RailsのDSLを組み合わせるととりあえず動くものを作れるよう
※ 2014-04-26 追記並びに一部コマンド部分の修正を行いました。( > => >> に変更 ) 個人用のチラシの裏のつもりが予想以上に反響いただいていたようで非常にびっくりしております。 ちょっとしたバッチ処理的なものはさくっとシェルスクリプトでやっています。 で、ログをとっておくべくリダイレクトを噛ますわけですが、 スマートに書く方法を調べたのでメモ。 元ネタは @sechiro さんの bashのプロセス置換機能を活用して、シェル作業やスクリプト書きを効率化する でございます。 本当に参考になりました。ありがとうございます。 今までは こんなことやってたわけです。 #!/bin/bash LOGFILE=/tmp/script-log command1 >> $LOGFILE 2>&1 command2 >> $LOGFILE 2>&1 ... >> $LOGFILE 2>&1
2014/04/20 20:49 ※ 商品のリンクをクリックして何かを購入すると私に少額の報酬が入ることがあります【広告表示】 Provisioning や Deployment にプログラミングスキルが必要になりつつあるようですが、皆様いかがお過ごしでしょうか。 Provisioning には、 Chef や Ansible が、 Deployment には capistrano や Fabric といったように使い分けられている方が多いようですが、私はずぼらなので Fabric を愛用しています。 Ansibleおしい! 環境によって違う変数とか、気持ちよく持たせたいじゃないですか。 Ansibleはいい感じにできます。 Provisioning とか Deployment のために、あらかじめ別の方法で agent 入れたりしたくないじゃないですか。 Ansibleはいい感じにできま
新卒エンジニア向け:Macにインストールすべきアプリ達2014年新卒エンジニア向けに、最初から知っておくと便利になるであろうアプリなどを紹介する機会があったので、ついでにブログ記事としてまとめておく。Boxenとかもあるけど、正直手軽さにかける印象なので、普通にHomeBrewと手作業。 下記で説明しているHomeBrew Caskを使えば、ほぼ一発で必要なアプリケーションが手に入るのでオススメ。 正直、iOS/Androidエンジニア向けのものは、あんまりない…。すまそん。 前提 Mac OSX 10.9〜(多少、古くても出来ると思うけど) Webエンジニア(PHPメイン)/iOS,Androidエンジニア対象 なにがなんでも最初に入れるべきアプリ Xcode HomeBrew HomeBrewを通じてインストールすべきもの Brew Cask zsh vim jq | JSONパーサー
4/10に開催されたエンジニアナビ主催のイベントでnanapiのシステムについて話してきました。今回は珍しく、nanapiのワンマンライブ的な感じです。時間も40分ほどあったので何について話そうかなーといろいろと考えてました。 自分がインフラ出身なのでどうしてもその辺り中心にはなってしまいましたが、極力nanapiでの開発手法やフローなどについても話すように心がけました。イベント後のアンケートや質問などみても満足度が高かったようで良かったです。 質疑応答で答えられなかった内容 当日は付箋で質問をもらう形式だったのでたくさんの質問をいただくことができました。時間の関係で全部お答えすることができなかったので、もらった質疑応答に関してここでお答えします。近い質問は勝手にマージしちゃっています。 事業について Q: 一人でやっているときの技術的な問題はどんなもので、どう解決したか? A: 小さな技
4/12 に大阪でコンテナに関する仮想化の勉強会を開催し,『Linux コンテナ入門』というお題で発表してきました. 前日はDocker Meetup Tokyo #2で,最終の新幹線に飛び乗り,翌日午前から準備をして (前日,私がいない間に準備してくれて助かった!!),午後から勉強会ということで,アラフィフ予備軍のおっさんにはちょっと強行軍だったのですが,年間を通じて最もコンテナ分の濃い二日間になり,非常に楽しく,ためになる時間を過ごすことができました. この勉強会はは広く「コンテナに少しでもかすれば良い」という考えで開催しています.私がどちらかというとベースとなる仕組みの勉強ばかりなので,実際の応用事例とかも聞きたい,自分が使ってないコンテナ技術についても聞きたいと思っているからです.自分が聞きたい話を聞くために勉強会を開く,という考えですね.プログラムについても仕組みから徐々に応用に
昨年秋頃から年明けにかけてRailsで顧客のサービスをひとつ作った 久々のチーム開発で。チーム人数は3名。 せっかくなので使ったツールややり方などを備忘録的に残しておく。次いつまたチーム開発する機会があるのか知らんけど。 実践したこと プルリクベースの開発 Webサービス開発現場から / 近頃の開発のやり方 ・・・ Github と Pull Request とコードレビュー 上記のやり方が面白そうだったので試してみた。 Githubを使っていれば拍子抜けするほど簡単に流れに乗ることができた。 Git力が足りないので最初は少し大変だったが、馴れてくると細かくブランチを切ってフィーチャーごとに対応するということが開発のテンポを良くしてくれた。 コードレビューはイージーミスによるバグや既存のコードと大きく流れの違うコードが混ざるのを未然に食い止める事ができたりと、一定の成果はあった。 一方でい
市場や業界の各論ではなく、もう少し深堀りしたマクロ的な視点で最近自分が感じている違和感の正体をまとめてみました。2013年になって感じていたのは『予想していたものよりはるかに大規模で重要な変化が世界全体におきてるんじゃないか?』という確信に近い予感です。色々なモノを見て自分の視点が変わったからそう感じるだけかもしれません。なかなか文章にして体系化できませんでしたが、正月に時間がとれたのでまとめてみました。ちなみに完全な私見です。 4億ユーザを50人で支えるスタートアップ ちょうど年末にWhatsAppというアプリの記事が掲載されていました。WhatsAppとは2011年にアメリカで始まった無料通話・メッセンジャーアプリです。日本ではLINEが有名ですね。月間のアクティブユーザ数が世界で4億人を超えたと発表されていましたが、驚くのはこのサービスがたった50人の社員で運営されている点です。ちな
第3回 コンテナ型仮想化の情報交換会@大阪 で行った発表です。 コンテナ超人みたいな人ばかりで、この内容で発表して良いものやらと思ったのですが、アプリケーションを書く側からの視点で話してきました。 Vagrant ユーザのための Docker 入門 Docker を知った時は、速くなった Vagrant のようなものだと思っていたのですが、色々と見る内にそもそも別のもので、ユースケースとして重なるところはあれど、別のツールだと認識した方が良いです。 Docker の入り口としては、デモを見てもらうのが、手っ取り早いので、そのあたりが伝わったなら良かったです。 Introduction to Docker 発表で引用した「Introduction to Docker」は下記です。公式の資料なので、色々ググる前に、まずはこれを読むのがおすすめです:D CentOS で Docker を動かす
2. モック作る次に、Illustrator でモック作る。前は Photoshop で作ってたけど Illustrator に変えた。ラフスケッチでだいたいの構造は決まってるので、それを画面で見た時の見栄えを検証する。雑だけどこれは自分のサイトなのだから自分しか見ないという前提があって、雑でも問題ないということにしてる。8割くらい作り込んだところでやめて、コーディングに入るようにしている。2割くらい変更可能な余地を残しておくことで、コード書くとき融通が効く。 ラフとかモック描かずにコーディング始めることもたまにあるけど、それは余程デザインが頭のなかで固まっている場合に限る。ラフとかモック作るの、コーディングと同じくらい大事だと思ってて、コーディングを始めてしまうとデザインに気を配るのを疎かにしがち。デザインを考えつつ同時にコードを書くというのは結構難しくて、トレーニングが要る。全体のデザ
dokkuを普段持ち歩いてるMacbook AirのVirtualBoxのUbuntu12.04に入れた。 dokkuはDocker環境をセットアップしてくれて、そこに個人用のHerokuのようなものを建立してくれる。 dokku本体は100行ぐらいのshellscriptで実装されている。そこから作者のprogrium氏が作った色々なツールが呼び出されるので、実体としてはもっと大きいけど。 vagrantとかchefとか全く使わずに、アプリをgit pushするとVMが建つ環境が簡単に作れる。 gitのhookでdockerコンテナが作られて、フロントのnginxのproxyが設定されて、websocketも通る。 コンテナ構築にはherokuのbuildpackが使われているので、アプリの内容に応じて自動的にnodeとかrubyとかの環境がセットアップされる。 buildpackはhe
OpenSSLの脆弱性「Heartbleed」が世間を賑わせていますが、色々と乗り遅れてしまった感があるので、ゆるゆると落ち穂拾いをしようかと思います。 Heartbleedで秘密鍵を手に入れたらSSL通信の中身全部見えちゃうじゃん!! という事態になっていますが、なんとなく理論的にそうだろうなと分かるもののイマイチ具体的な手順が分からない。 というわけで今回のテーマとして、手元にサーバの秘密鍵と、SSL通信をパケットキャプチャしたpcapファイルがあるときに、Wiresharkでどんな感じでSSL通信を「ほどく」のか……という具体的な手順を、ハマり所を含めてまとめておこうかと思います。 というか、私自身がハマったので自分用メモですな。なおこの文書では"SSL"とだけ記述し、TLSは無視しています。 前提条件 とりあえず以下のような感じの検証環境で試しました。 IPアドレス 説明 ホストO
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く