rbenv で ruby の環境を整える

忙しい人のためのまとめ インストール Macは brew install rbenv ruby-build でインストール。 git clone https://github.com/sstephenson/rbenv.git ~/.rbenv git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build apt-ge…

Dockerコンテナのようなランダムに名前を生成する`name`コマンドを作った(?)

“Dockerコンテナのような"とタイトルには書いたが、まんまDockerで使われているLibraryをコマンド化しただけのもの。果たして、作ったと言っていいのか疑わしいレベル。 イマ作っているアプリケーションでランダムな名前ユーザのディレクトリを幾つか作る必…

React.jsでES6の文法を使って defaultProps などを設定する

環境 Tools Version react-tools 0.13.1 jsx 0.12.2 react.js 0.13.1 JSXTransformer.js 0.13.1 react-toolsをnpmでインストールし、jsxに--harmonyオプションを付けてコンパイルした。 npm install -g react-tools jsx --harmony -w src build 方法 var Hel…

DockerRegistryのコンテナ一覧を見るDockerIndexをつくった

先日、会社のエンジニア全員が参加するハッカソンでDocker Indexというアプリを作りました。 名前はさておき、Docker Index とは、Docker Registoryに登録されているコンテナを一覧表示するWebApplicationです。 Docker RegistoryはDocker Hub(のようなもの…

Macのdockerを1.0にアップグレードする

まだ、docker 1.0になってからアップグレードしてないMacがあったので、アップグレードしました。 古いboot2dockerのアンインストール 次の手順でboot2dockerをインストールしていた人はこの手順を行う必要があります。 # これでインストールしてた人は一度…

Scientific LinuxのDockerイメージを作成する

Docker Indexに公式に提供されている、 Scientific Linuxのベースイメージがなかったので、 自分で作ってみました。 成果物はこちら。 Scientific Linuxのベースイメージ: ringo/scientific ベースイメージを作成するのに利用したスクリプト: github.com/rin…

Packer で Scientific Linux 6.5 の base box を作成してみる

VagrantでScientificLinux 6.5を使いたかったんだけど、 vagrantbox.esには明示的に6.5って書いてあるboxは無かった。 (Scientific Linux 6はあったけど) なので、ScientificLinux 6.5 のvagrant用base boxをpackerで作成してみた。 成果物のtemplateはGit…

knife solo cook コマンドの誤爆を防ぐ

knife solo cookコマンドはchefリポジトリ内で実行しないと、失敗するだけでなく、 余計なnodeファイルなどが作成されてしまう。 ただ、エラーで終了してくれればいいんだけど。。。 しばらく、失敗している原因(実行するディレクトリが違う事)に気づかい…

Vagrantで起動しているVMを一覧する

VagrantでVMをポコポコ起動していると、どこで何を起動して、どのVMが生きているのか良くわからなくなる。 いつも、VirtualBoxを起動して確認するのも面倒くさいしイケてないきがする。 vagrant statusはVagrantfileがある場所でしか表示されないし、 表示さ…

VagrantでSnapShotを撮る

Vagrantプラグインにvagrant-vbox-snapshotというものがある。 これを使うと簡単にスナップショットが撮れて便利なのでメモ。 スナップショットを使うと、その瞬間のVMの状態をまるごと記憶しておくことができる。 例えば、サーバに様々なミドルウェアをイン…

nodebrewでnode.jsのインストール

環境 Scientific Linux 6.5 Mac OSX 10.7, 10.9 前準備(Scientific Linux) ビルドに必要なパッケージをインストールします。 飛ばして、エラーが出てきたら実行するでもいいかも。 sudo yum install gcc-c++ nodebrewを使ってnode.jsをインストール nodebr…

``git branch -a''で消したはずのリモートブランチが出てくる

毎回、調べ直してるのでメモ。 gitで不要なリモートブランチを狩った後に、ローカルでgit branch -aを実行すると、 消したはずのブランチが残っていることがある。 これを消すには以下のコマンドを実行する。 git fetch --prune また、remoteの状態を見たい…

Devsumi 2014: 「サーバプロビジョニングのこれまでとこれから」の感想とメモ

サーバプロビジョニングのこれまでとこれから 宮下 剛輔 さん @gosukenator github.com/mizzy paperboy&co. サーバプロビジョニングのこれまでとこれから [Slide] Future of Server Provisioning at Developers Summit 2014 感想 Developers Summit 2014 に…

MongoDB のタイムゾーンについて

MongoDB ではタイムゾーンを指定できない. すべて,協定世界時(UTC)で表現される. JSTの時刻を扱いたい場合は,mongoから取り出した時に+09:00したりしないといけない. db.things.insert( { "time1": new Date() } ) db.things.find() すると, { "_id"…

OSXでJavaのバージョンを切り替える

先日,Java8で遊んでみようと思って,OSXにインストールしました. java -versionを打つと java version "1.8.0-ea" Java(TM) SE Runtime Environment (build 1.8.0-ea-b121) Java HotSpot(TM) 64-Bit Server VM (build 25.0-b63, mixed mode) がでて,ちゃ…

Node Knockout 2013 にでたよ!

一人アドベントカレンダーも達成できず,年明けるまでにこの記事も投稿しておこうと思うも投稿できず,酔っ払ってテレビ見てました.あけましておめでとうございます. 先日(11/9-11),Node Knockout 2013に出ました! 書こう,書こうと思ってずっとほったら…

bashでビープ音を消す

いつもzshでは,.zshrcにsetopt no_beepを書いて,ビープ音を消していた. bashでも同じ設定をしたくて,調べるとset bell-style noneを書くといいらしということがわかったので, .bashrcに記述したが反映されなかった. この設定はどうやら.inputrcに書か…

bash: scp: コマンドが見つかりません

SCPでファイルをサーバにコピーしようとしたら, bash: scp: コマンドが見つかりません というエラーが出てしまい,送信できなかった. 調べてみたら,openssh-clientsが入っていないことが原因らしい. Scientific Linux 6.xを最小インストールするとインス…

vimで貼付け時に自動でpasteモードにする

vimでOSのクリップボードから貼り付けたいときは, 一度set pasteでペーストモードにしてから貼り付ける. これが,結構面倒くさいんだけど以下のスクリプトを使うと簡単に貼り付けができるようになる. ノーマルモードでペーストを行うと自動でペーストモー…

gitでpull(fetch) 専用のremoteを登録する方法

gitでリポジトリをforkした時に,fork元のリポジトリを追いかけたいっていう事があった. でも,間違ってpushしたくないので何とかしたい. そんなときには,pull(fetch)専用のremoteを登録するといい. git remote set-url --push origin no-pushing 参考 G…

git で dry-run

svnで使っているdry-runをgitでも実行したい時があると思います. しかし,gitにdry-runに当たるものはないっぽいです. 一度マージを実行して,コミットせずに手動で戻すという形をとるようです. --no-commitをつけてdevelopをコミットなしでマージします…

gitでディレクトリ構成を維持する

今日もgitネタ. gitでディレクトリ構成を維持したい時が度々ある. しかし,空のディレクトリはgitで管理されない. そこで,ディレクトリを保持したい場合は,中に.gitkeepをおいておくといいそうな. git gitkeep すべてのディレクトリに,いちいち作成し…

git ignore のデフォルトを設定する

chefネタがevernoteからなくなってきたので,前々回に続きgitネタを. 一人Advent calendar結構しんどいね.. はじめに 毎回,git initして.gitignoreつくって,.DS_StoreとかThumbs.dbとかを追加する. これはすごい面倒くさいので,デフォルトで何とかし…

DisplayLinkの暴走

CPU異様に食ってるからなにかおかしい. CPUバカ食いするChromeも閉じたし,再起動してみても直らない. ActivityMonitorでCPU使用率を見てみるとReportCrashというのが, ポールポジションとフロントローを独占している. さらにConsoleでログを見てみると…

gitでcommitのメールアドレスを変更する

コミットログのメールアドレスを書き換えようと思って,git filter-branch --commit-filterしたらターミナルが落ちた. 環境は以下のとおり. OSX 10.7.5 git version 1.8.3.4 iTerm2 Build 1.0.0.20131124 zsh 5.0.2 (x86_64-apple-darwin11.4.2) 発生事象 …

Chefのrecipeを書いてみる その5 -変数をAttribute化してみる編-

前回書いた,Chefのrecipeを書いてみる その4 -インストール済みの場合は実行しないようにしてみる編-に引き続きchefのrecipeを順を追って書いていきます.今日は,バージョンやインストールするディレクトリをnodeファイルから指定できるようにしてみようと…

Chefのrecipeを書いてみる その4 -インストール済みの場合は実行しないようにしてみる編-

前回書いた,Chefのrecipeを書いてみる その3 -recipeを分割してみる編-に引き続きchefのrecipeを順を追って書いていきます.今日は,すでにソフトウェアがインストールされていたら,実行しないようにガードをつけてみようと思います. 実行する前にインス…

Chefのrecipeを書いてみる その3 -recipeを分割してみる編-

前回書いた,Chefのrecipeを書いてみる その2 -recipeからインストールするversionを指定してみる編-に引き続きchefのrecipeを順を追って書いていきます.今日は,recipeを分割してみようと思います. Recipeを分ける 現時点のrecipeを実行すると,mysql-con…

Chefのrecipeを書いてみる その2 -recipeからインストールするversionを指定してみる編-

前回書いた,Chefのrecipeを書いてみる その1 -とりあえずrecipeを書いてみる編-に引き続きchefのrecipeを順を追って書いていきます.今日は,versionを指定できるように改造しようと思います. versionを指定できるようにしてみる recipeをみてみると,いろ…

Chefのrecipeを書いてみる その1 -とりあえずrecipeを書いてみる編-

Chefのcookbookを順を追って,説明しながら書いていこうと思います. 最初はナイーブにインストールすることを目標として,次にrecipeを分けてみたり,attributeを設定してみたりします. 今回はナイーブにインストールするところまで. インストールするも…