lubuntu12.04にapt-getでnode.jsを導入(ついでにnpmでexpressとcoffee-scriptも)
https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager
基本はここのubuntuのとおり
$ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:chris-lea/node.js $ sudo apt-get update $ sudo apt-get install nodejs
これで、node.jsとnpmインストール完了、以下のコマンドで確認
$ node -v v0.10.1 $ npm -v 1.2.15
表示できたらパスも通ってます。
次にexpressとcoffee-scriptをnpmで導入
$ sudo npm install -g express coffee-script
-gオプションによりシステム全体にインストールされます。 -gを指定したくない場合は、自分でパスを通す必要があるみたいです。
で、確認
$ coffee -v CoffeeScript version 1.6.2 $ express --version 3.1.0
ちなみに、場所はここに入ってます。
$ which express /usr/bin/express $ which coffee /usr/bin/coffee
HTMLのテンプレートエンジンとかも入れようかと思ったけど、たくさんありすぎてこれ!って決められないのでやめました。。
ubuntuにgitを入れる方法
apt-getにはgitない!ってブログをちらほら見かけるけど、どうやらあるみたい。
$ sudo apt-get install git-core $ sudo apt-get install git-doc
参考 http://sourceforge.jp/magazine/09/03/16/0831212 http://linux.keicode.com/prog/git-install.php
redmineをapache2とpassengerで動かす
redmineはrailsアプリなのでrailsを動かす環境を導入すればOK! ということで、apacheとその上でrailsアプリを動かすモジュールのpassengerの組み合わせでredmineを動作させます。
redmine2.1.4をruby1.9系でyumを使ってawsに入れる際の手順 の続きという前提になっています。
下準備
$sudo yum install -y gcc-c++ curl-devel zlib-devel httpd-devel
- passengerのインストール
$gem1.9 install passenger
$passenger-install-apache2-module
この時に足りないものがあった場合はさらに追加
こう表示されるはず
なければ、yumってください。
* GNU C++ compiler... found at /usr/bin/g++ * Curl development headers with SSL support... found * OpenSSL development headers... found * Zlib development headers... found * Ruby development headers... found * OpenSSL support for Ruby... found * RubyGems... found * Rake... found at /home/ec2-user/bin/rake * rack... found * Apache 2... found at /usr/sbin/httpd * Apache 2 development headers... found at /usr/sbin/apxs * Apache Portable Runtime (APR) development headers... found at /usr/bin/apr-1-config * Apache Portable Runtime Utility (APU) development headers... found at /usr/bin/apu-1-config
LoadModule passenger_module /home/ec2-user/.gem/ruby/1.9.1/gems/passenger-3.0.18/ext/apache2/mod_passenger.so PassengerRoot /home/ec2-user/.gem/ruby/1.9.1/gems/passenger-3.0.18 PassengerRuby /usr/bin/ruby1.9
awsのユーザーネームをデフォルトにしている人はこれがそのまま表示されるはずです。 これは人によって代わる可能性があるので自分で確かめて作成してください。
ServerName 指定ドメイン.com # !!! Be sure to point DocumentRoot to 'public'! DocumentRoot /var/www/redmine-2.1.4/public # This relaxes Apache security settings. AllowOverride all # MultiViews must be turned off. Options -MultiViews
ServerNameにひもづいてるドメイン名を書く
確認する
$sudo /etc/init.d/httpd start
gemでインストールした物を削除する方法
gem uninstall rails
↑bundleとかぶるので導入中に試行錯誤する際は結構使う removeではないんですね。
redmine2.1.4をruby1.9系でyumを使ってawsに入れる際の手順
awsにてawsのインスタンスを作る
下準備
まず、yumを最新にする
$sudo yum -y updateruby1.9系を入れる
$sudo yum install -y ruby19ruby1.9の開発キット
$sudo yum install -y ruby19-develmakeする際に必要(わからなくても入れる)
$sudo yum install -y make今回はデータベースにmysqlを使う(redmineが推奨しているため。postgresqlやsqliteでも可)
$sudo yum install -y mysql-server mysql-develmysqlサーバーを起動しておく
$/etc/init.d/mysqld startmysqlのセットアップ
create database redmine character set utf8;
create user 'redmine'@'localhost' identified by 'my_password';
grant all privileges on redmine.* to 'redmine'@'localhost';
ダウンロード作業
http://rubyforge.org/frs/?group_id=1850
* 上記URLからredmineの最新版(今回は2.1.4)をダウンロード
$wget http://rubyforge.org/frs/download.php/76589/redmine-2.1.4.tar.gz
インストール作業
redmine-2.1.4ディレクトリで作業するためにそちらに移動
$cd /var/www/redmine-2.1.4fedora17系のrailsのバグがあるためGemfileのgemが並んでるところに下記内容を追記
$vim Gemfile
gem "bigdecimal" , "~> 1.1.0"
gem "minitest"
なんでバグるのかわかんないですが、これやったら直ります。
パッケージ多すぎて何が何に効いてるのか調べるのはまた今度Redmineはgemの依存関係を管理するために Bundlerを使う(これ使わないと絶対バグる)
$gem1.9 install bundler --no-rdoc --no-ri
ドキュメントとか英語で読めないので、インストールしないために[--no-rdoc --no-ri]を入れる。
docをインストールしてるとものすごく時間がかかるのでgemいれるときはやったほうがいいです。redmineに必要なgemをbundle経由でダウンロード(いらないものはwithoutで設定する)
$bundle install --without development test rmagick postgresql sqliterakeの指定先が古いrubyのままなので、1.9のほうに指定しなおす
$vim /home/ec2-user/bin/rake
1行目
旧: #!/usr/bin/env ruby
新: #!/usr/bin/env ruby1.9DBの設定ファイルをコピー
$cp config/database.yml.example config/database.ymlDB設定ファイルを編集
$vim config/database.yml
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: my_password
:の後にスペースをいれないとエラーになるセッションストア秘密鍵
$rake generate_secret_tokenDB上にテーブルを作成
$RAILS_ENV=production rake db:migrateデフォルトデータをDBに登録
$RAILS_ENV=production rake redmine:load_default_data
言語選択が出たらjaと入力してエンター
確認
* WEBrickで起動してみる。
$ruby1.9 script/rails server webrick -e production
3000のポートをあける awsにて操作のため省略
確認する
http://指定ドメイン:3000
redmineが写れば成功
WEBrickは開発確認用のwebサーバらしいので、実運用は別のwebサーバを使う予定
現在、apacheとpassengerで動かそうとしているが苦戦中