momolog

生きていく中で考えたことをつらつらと

Windows7でAsakusaSatelliteをセットアップしてみたよ

 背景

開発者間のコミュニケーションはどうしてる?

•メール?

•× スピード感がない

IRC

•× サーバ立てるのがめんどい

•× 検索が弱い

•AsakusaSatellite

•→ [せいかい]

http://www.slideshare.net/mallowlabs/a-realtime-chat-application-for-developers-asakusasatellite

 ということらしいので、会社PCでセットアップしてみることにしました。

 その方法はまあ、こちらに書いてあった通りなのですが、しかし色々と躓くことも多かったので、手順を忘れないように書いておきます。

 

動作環境

以下のソフトウェアのインストールが必要です。

    ※インストール後、binフォルダにパスを通してください。

また、以下のアドオンのインストールが必要です。

    ※インストール後、binフォルダにパスを通してください。

 

Ruby1.8.7のインストール後、gem installより以下をインストールします

  • RubyGems 1.4.2 or later
  • Bundler 1.0.7 or later

MongoDBを公式サイトからダウンロードします。

     ダウンロードしたファイルを適当なフォルダに解凍します。

      その後、binフォルダにパスを通してください。

 

インストール

ダウンロードリンク から最新版をダウンロードし、適当なディレクトリに展開してください。 展開したディレクトリを AsakusaSatellite にリネームしてください。

 MongoDBのデータフォルダを作成し、(ここではC:\mongoとします)コマンドプロンプトから以下のコマンドを実行してください。

 # MongoDBの起動(起動済みの場合は不要)

> mongod --dbpath C:\mongo(↑で作ったデータフォルダを指定してください)

 別のコマンドプロンプトを立ち上げ、以下のコマンドを実行してください。

 # MongoDBへのアクセス

>mongod

  さらに別のコマンドプロンプトを立ち上げ、以下のコマンドを実行してください。

# 展開ディレクトリへの移動

> cd AsakusaSatellite(↑で展開したフォルダを指定してください)

# 依存ライブラリのインストール

>bundle install --path .bundle --without development test

# リソースのプリコンパイル (0.8 以降)

> bundle exec rake assets:precompile RAILS_ENV=production

 あとは起動するだけです。

# WebSocketサーバ、AsakusaSatellite本体の起動

> bundle exec thin -R socky/config.ru -p3002 -t0 start &

 さらに別のコマンドプロンプトを立ち上げ、以下のコマンドを実行してください。

>bundle exec rails server -e production

 これでOK。

 ここまで来た時、4枚のコマンドプロンプトのウインドウが立ち上がっているはずです。

 では、AsakusaSatelliteにアクセスします。

 http://localhost:3000/ 

 こんなかんじのページが開けたら成功です。

 

f:id:momocus:20140424215305j:plain

 開けなかった方は、プロキシの設定を見直す必要があるかもしれません。

 IEならインターネットオプションを、GoogleChromeなら設定→詳細設定→ネットワーク→プロキシの設定の変更 を開きます。

 接続 タブ→LANの設定→詳細設定 を開き、プロキシの例外にlocalhostを追加してください。

 

 localhost 以外で運用する場合には、WebSocket サーバの設定を変更してください。 AsakusaSatelite\config\message_pusher.yml の localhost を IP アドレス等で置換してください。

socky:

  http: http://localhost:3002/http

  http: ws://localhost:3002/websocket

  app: as

  secret: secret

 設定の反映には、AsakusaSatellite の再起動が必要です。

 

 一度インストールが完了したならば、次回からは以下の手順でAsakusaSateliteを起動できます。

 # MongoDBへのアクセス

> mongod --dbpath C:\mongo(↑で作ったデータフォルダを指定してください)

 別のコマンドプロンプトを立ち上げ、以下のコマンドを実行してください。

# MongoDBの起動

>mongo

 別のコマンドプロンプトを立ち上げ、以下のコマンドを実行してください。

# 展開ディレクトリへの移動

> cd AsakusaSatellite(↑で展開したフォルダを指定してください)

# WebSocketサーバの起動

> bundle exec thin -R socky/config.ru -p3002 -t0 start &

 さらに別のコマンドプロンプトを立ち上げ、以下のコマンドを実行してください。

# 展開ディレクトリへの移動

> cd AsakusaSatellite(↑で展開したフォルダを指定してください)

#AsakusaSatellite本体の起動

>bundle exec rails server -e production

  あとがき

 …うん、えっとね、あれですね。

 めっちゃめんどい(´・ω・`)

 なんで起動するのに毎回コマンドプロンプト4枚も開かんきゃいけないんでしょう。

 DevKitの中にmsysがあったんで、それ使えばもっと楽にできるかもしれないですけど、まだ試してないです。

 まあとりあえず無事に出来たので良かったです。

 以下のサイトを参考にさせていただきました。

 http://www.codefirst.org/AsakusaSatellite/

 http://halucolor.blogspot.jp/2013/01/windowsmongodbwindows7mongodb.html

 あと助言くださったmzpさんありがとうございます。

 

 

  2014/04/25追記

 AS起動するためのバッチファイルを作成しました。

 パスの部分を適当に変えて使ってください。

start mongod --dbpath C:\mongo

start mongo

cd \AsakusaSatellite

start bundle exec thin -R socky/config.ru -p3002 -t0 start &

TIMEOUT /T 5

cd \AsakusaSatellite

start bundle exec rails server -e production