node.js + Ubuntu + Apache Proxy

Standard

Ubuntuにnode.js入れてApacheからProxyさせてみたの転載 + 作業ログ。
 
 
コンパイル + インストール
 
node.jsは最新版をgithubからとってきてコンパイルする。パッケージもあるけど。http://packages.ubuntu.com/maverick/nodejs
必要なものが入ってなければインストールする。

  • sudo aptitude install libssl-dev
  • sudo aptitude install build-essential
  • cd /usr/local/src/
  • git clone https://github.com/joyent/node.git
  • cd node
  • sudo ./configure
  • sudo make
  • sudo make install

 
VirtualHostの設定とProxyモジュールの有効化
 
/etc/apache2/sites-available/nodejs

<virtualhost *:80>
    ServerName nodejs
    DocumentRoot /YOURHOME/Sites/nodejs
    <directory /YOURHOME/Sites/nodejs/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    
    RewriteEngine on
    RewriteRule /(.*) http://localhost:8124/$1 [P,L]
    ErrorLog /var/log/apache2/error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    CustomLog /var/log/apache2/access.log combined
</virtualhost>
  • sudo a2ensite nodejs
  • sudo a2enmod proxy
  • sudo a2enmod proxy_http
  • sudo /etc/init.d/apache2 restart

 
/YOURHOME/Sites/nodejs/hello.js

var sys = require('sys'),
http = require('http'),
port = 8124;
http.createServer(function(request, response) {
  response.writeHead(200, {
    'Content-Type': 'text/html'
  });
  response.end(request.url + ' - Hello node.js\n');
}).listen(port);
sys.puts('Server listening on port ' + port);
  • cd /YOURHOME/Sites/nodejs
  • node hello.js &

 
npmのインストール
 
http://npmjs.org/

  • curl http://npmjs.org/install.sh | sudo sh

rvm + rails3 + passenger + apache + mongoDB + mongoid on [Ubuntu]

Standard

きっとまた忘れるのでメモ。
 
 
rvm インストール
 
これ
 
 
rails3とpassenger
 
rvmかしこい。

  • rvm install 1.9.2
  • rvm use 1.9.2 –default
  • rvm 1.9.2 –passenger
  • rvm 1.9.2
  • gem install passenger
  • rvmsudo passenger-install-apache2-module

 
rails3が入ってないときは入れる。
libncurses5-dev libreadline6-devが入ってなければいれてから

  • sudo aptitude install libncurses5-dev libreadline6-dev
  • gem install rails –pre

Continue reading

[git]+[gitosis]+[gitweb]on[Cent OS][Ubuntu]

Standard
[git]+[gitosis]+[gitweb]on[Cent OS][Ubuntu]

今日の作業ログ
 
 
前提
 
gitを使ってソースのバージョン管理を行う際の運用フローは以下とする。

  1. 新たなプロジェクトが立ち上がった際、プロジェクトメンバーは自分の公開鍵をgitosis管理者へ送付する。
  2. gitosis管理者はプロジェクト用のgit公開リポジトリをサーバ上に作成。必要であればgitosisの設定を変更する。(グループの追加、メンバーの追加/削除など)(後述)
  3. メンバーは新に作成された公開リポジトリからclone(checkout)、編集(ローカルへcommit)、push(サーバ上のリポジトリに反映)する。

Continue reading