タグ

ブックマーク / www.fraction.jp (11)

  • docker 便利

    自鯖にオレオレ Cloud Foundry は色々なウェブアプリを色々な環境で突っ込めて便利だなあと思う反面、 一台のサーバにあんなに重厚な仕組みはいらないよなーと思ってたところに docker ですよ。 概要 とか 使い方 とかはすでに他のえらい人たちが紹介してるので、 使ってて気づいた便利な使い方を紹介ですよ。 Remote API を使う いままで Remote API を http で公開してたので、 簡単にリモートから dockerAPI を叩けたのですが最新の Docker ですとデフォルトが Unix ソケットを利用するように変更されてしまっているので起動時にわざわざ http でも API を公開するよと指定しなくちゃならない。 bind するホストやポートやソケットは複数設定することができるので、 デフォルトのソケットも bind しつつ、http でも API

    docker 便利
  • WebSocket を通す ReverseProxy が欲しいの

    Node.js で socket.io 使ってウェブチャット作って遊ぶ! とかやってると、そのうち作ったアプリを自宅サーバとかで公開したくなるのが人の世の常というものですが。 とくに考えずに自宅サーバで作ったアプリを動かそうとすると、 「Node.js で作ったアプリをポート3000番で動かしてー、フロントサーバとして Apache か nginx を置けば良いやー」 って感じで上の図のような構成になると思いますー。が (そもそもイベントループが売りの Node.js のフロントサーバが Apache ってどうなの?ってのは置いといて。) ふと気づく。クライアントからの WebSocket が届いてねえ! はい、対応してないんですよね、Apache も nginx も、WebSocket のプロキシは。 仕方ないので無理矢理動かそうとすると、Node.js アプリが動いてるポートを開くこと

    WebSocket を通す ReverseProxy が欲しいの
  • WebIRC が iPhone 用 IRC クライアントとして最強な件

    ただし自宅にサーバを持ってる人に限る ただし Perl の使い方がわからなくて Ruby が好きな人に限る ただしイケm、うそです、ごめんなさい。 IRChon はすぐクラッシュして落ちるからあまり使ってないし、 LimeChat は友達に買わせて自分で試してないのであまり参考にならないかもしれないけれどもw 今の iPhone 用の IRC クライアントは、バックグラウンドで動作することができないので、 アプリを終了している間のログは見ることできないですよね?? けど、iPhone を使っててずっと IRC クライアントだけ起動してて他のことをしないってありえなくて、 ブラウザでネットを見つつー、iPod で映画を見つつー、たまに IRC をチェックっていうのがほとんど。 これじゃ LimeChat や IRChon じゃだめなんですよ! というわけで、そんなあなたにお勧めなのがこちら。

    WebIRC が iPhone 用 IRC クライアントとして最強な件
    yuiseki
    yuiseki 2009/08/16
  • 続 ActiveRecord::Baseのto_jsonメソッド

    ActiveRecord::Baseのto_jsonメソッドが気にくわないというエントリを以前書いたが、つい最近Agile Web Developmentで紹介されていたJsonifierがいい感じ。 Jsonifier is a Rails plugin that adds options to the ActiveRecord#to_json method similar to ActiveRecord#to_xml. It's time to treat the JSON encoding of AR objects with more respect ;) Jsonfier は ActiveRecord#to_xml に似た ActiveRecord#to_json メソッドにオプションを追加する Rails プラグインです。今こそ、AR オブジェクトの JSON へのエンコーディ

    yuiseki
    yuiseki 2009/03/05
  • ruby_sessが爆発する件について

    Railsはページを表示するたびにどんどんsessionファイルを作っていく。 そのまま放置しておくと大変なことが起こる。 というわけでcronを使って定期的にsessionファイルを削除しなくちゃいけないわけだが、たいしてセキュリティの必要性が無く、利便性のためにhatenaのサービスみたいに1ヶ月くらいセッション情報を残して起きたいときには困ったことになる。 うちのような対してアクセスがないはずのページでも3日くらいセッションを残しておくだけで500近くのセッションファイルがたまる。ほんと勘弁して欲しい。 んで、生成されているセッションファイルは100バイトにも満たない小さいファイルばかり。一体どんな情報が格納されているのか不思議に思い見てみるに、 [yuanying@juha sessions]$ more ruby_sess.f872e3fe6cfe9005 {" hash{"re

    yuiseki
    yuiseki 2008/11/17
  • Rails で select タグ

    妙に忘れるのでメモ。 覚えるタグは基的に三つ。 モデルの属性値を select タグで選択したい collection_select モデルの属性値以外を select タグで選択したい select_tag / options_from_collection_for_select collection_select モデルの属性値を select する。 collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {}) たとえば、 user オブジェクトの locale 属性を、 [ [:jp, 'Japan'], [:us, 'United States'], [:uk, 'United Kingdom'] ] から選択させたい場合は、 <

    yuiseki
    yuiseki 2008/09/23
  • Pragger で Pixiv

    PraggerでPixivのフィード作るのは簡単だった。 - module: Feed::custom_feed config: url: http://www.pixiv.net/index.php?tag=C74 split: "<li>(<a\\ href=\"index\\.php\\?mode=medium&illust_id=\d+?\"><img\\ src=\"http.+?\"\\ border=\"0\"\\ /></a><br\\ /><div\\ class=\"pdgTop5\">.+?</div>)</li>" title: "<div\\ class=\"pdgTop5\">(.+?)</div>" - module: Filter::subs config: regex: "(index\\.php)" to: "http://www.pixiv.net/m

    yuiseki
    yuiseki 2008/08/01
  • Railsのセッションではまる

    症状 Rails書評生活というオレオレ蔵書管理システムを作ってるんですが、一昨日あたりからまったくログインできない状態になった。 Session Expireの設定に難あり セッションの生存期間をユーザが最後に訪れたときから固定の期間にする、今回のシステムでは1ヶ月と設定していたのだけれども、以下のように設定するのは間違いらしい。 class ApplicationController < ActionController::Base session :session_expires => 1.months.from_now end Wikiの方に思いっきり書いてあるけれども、開発環境ではApplicationControllerはページを読み込まれるたびにリロードされるから、ページを読み込まれるたびに1ヶ月セッションを伸ばしてくれる。しかし番環境ではApplicationContro

    yuiseki
    yuiseki 2008/05/30
  • Mac を git の共有レポジトリにする

    概要 Mac から Mac に git でレポジトリをpushしたりcloneしたりしようとすると理解不能なエラーが発生してうまくいかなかった。 うまくいかなかったのは、サーバでうまくgitのパスが通ってなかったためだった。 共有レポジトリにアクセスできない サーバにssh越しでpushできない 例えばクライアントのMacにあるローカルレポジトリをサーバのMacにpushしようとすると、 [ Client ] $ git push ssh://server/~yuanying/repos/test.git master zsh: command not found: git-receive-pack fatal: The remote end hung up unexpectedly command not found。 アップロードしようとしてるのになんでgit-receive-pack

    yuiseki
    yuiseki 2008/05/21
  • Apache+MongrelでRailsを動かす

    Apache+MongrelでRailsで作ったアプリケーションのproduction環境を構築した際のメモ。 まずはMongrelでRailsを動かしてみる。 [root@emma ~]# gem install mongrel [root@emma ~]# exit [yuanying@emma ~]$ cd web/books // アプリケーションのディレクトリに移動. [yuanying@emma books]$ rake environment RAILS_ENV=production migrate [yuanying@emma books]$ mongrel_rails start -d -e production その後httpd.confを編集。 <VirtualHost *:80> ServerAdmin webmaster@****** DocumentRoot /

    yuiseki
    yuiseki 2008/03/21
  • RailsにJSONデータをPostする

    概要 クライアント側からポストされたJSON形式のデータを、サーバ側でparamsから利用する。 こんな感じ。 クライアント側 $ telnet localhost 3000 POST /projects HTTP/1.1 Accept: application/json Content-Type: application/json Content-Length: * { project : { name : "Hello!", desc : "Hello World Project!" } } サーバ側 def create project = Project.new project.name = params['project']['name'] project.desc = params['project']['desc'] project.save ... end 通常の場合 通常

    yuiseki
    yuiseki 2008/03/21
  • 1