DiaporaをCentOS5.5にインストール
DiaporaをCentOS5.5にインストールしました. 公式のインストールガイドを見てみると,必要な物が書かれています.
- Ruby
- MongoDB
- OpenSSL
- ImageMagick
- Git
- Redis
- RubyGems
- Bundler
まずは必要な物をインストール.yumにある物はyumを使ってインストールします. [bash] sudo yum install libxslt libxslt-devel libxml2 libxml2-devel ImageMagick [/bash]
MongoDB [bash] cd /usr/local wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-1.6.2.tgz tar zxvf mongodb-linux-x86_64-1.6.2.tgz cd mongodb-linux-x86_64-1.6.2 sudo mkdir -p /data/db sudo ./bin/mongod & [/bash]
Git [bash] cd /usr/local/src wget http://kernel.org/pub/software/scm/git/git-1.7.3.3.tar.bz2 tar jxvf git-1.7.3.3.tar.bz2 cd git-1.7.3.3 ./configure make sudo make install [/bash]
Ruby [bash] cd /usr/local/src wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p302.tar.bz2 tar jxvf ruby-1.8.7-p302.tar.bz2 cd ruby-1.8.7-p302 ./configure --prefix=/usr/local/ruby make sudo make install [/bash]
Rubygems [bash] cd /usr/local/src wget http://rubyforge.org/frs/download.php/70696/rubygems-1.3.7.tgz tar zxvf rubygems-1.3.7.tgz cd rubygems-1.3.7 sudo /usr/local/ruby/bin/ruby setup.rb [/bash]
Bundler [bash] sudo /usr/local/ruby/bin/gem install bundler sudo ln -s /var/lib/gems/1.8/bin/bundle /usr/local/bin/bundle [/bash]
diaspora [bash] git clone http://github.com/diaspora/diaspora.git cd diaspore PATH=$PATH:/usr/local/ruby/bin:/usr/local/ruby/lib/ruby/gems/1.8/gems/bundler-1.0.7/bin sudo ./script/build install ./script/server [/bash]
これで,http://localhost:3000 にアクセスすると.Diaporaが表示されます.
GitでHTTPのpushができない
CentOS5.5で自分でビルドしたgit-1.7.3.3でhttpで公開されているリポジトリにpushできない.
[text] $ git push Password: fatal: git-push is not available for http/https repository when not compiled with USE_CURL_MULTI fatal: git-http-push failed [/text]
どうやらcurlのバージョンが古いみたい. http.hでcurlのバージョンをチェックして,USE_CURL_MULTIをdefineしている. [c firstline="18" highlight="20"]
undef USE_CURL_MULTI
if LIBCURL_VERSION_NUM >= 0x071000
define USE_CURL_MULTI
define DEFAULT_MAX_REQUESTS 5
endif
[/c]
なので,最新のcurlをビルドする. [text] $ cd /usr/local/src $ wget http://curl.haxx.se/download/curl-7.21.2.tar.gz $ tar zxvf curl-7.21.2.tar.gz $ cd curl-7.21.2 $ ./configure --prefix=/usr/local/curl $ make
make install
[/text]
そして,gitをビルドし直す. [text] $ cd /usr/local/src/git-1.7.3.3 $ ./configure --with-curl=/usr/local/curl $ make
make install
[/text]
これで,問題なくgit pushすることができました. [text] $ git push Password: Password: Fetching remote heads... refs/ refs/tags/ refs/heads/ updating 'refs/heads/master' from 65b04a46af3402256c2fa4ba3c56de2ad295b6e0 to 8d479858e101f096af489d40f9680bb8e4e6524c sending 4 objects done Updating remote server info To http://taka@localhost/git/my.git 65b04a4..8d47985 master -> master
[/text]
redmineがLDAPにつながらない
redmineでLDAP認証の設定を行った時,ログに以下が表示されうまく認証できない.
TypeError (can't convert Net::LDAP::LdapError into String): app/models/auth_source_ldap.rb:43:in `rescue in authenticate' app/models/auth_source_ldap.rb:35:in `authenticate' app/models/user.rb:109:in `try_to_login' app/controllers/account_controller.rb:147:in `password_authentication' app/controllers/account_controller.rb:142:in `authenticate_user' app/controllers/account_controller.rb:30:in `login' :10:in `synchronize' passenger (3.0.1) lib/phusion_passenger/rack/request_handler.rb:96:in `process_request' passenger (3.0.1) lib/phusion_passenger/abstract_request_handler.rb:513:in `accept_and_process_next_request' passenger (3.0.1) lib/phusion_passenger/abstract_request_handler.rb:274:in `main_loop' passenger (3.0.1) lib/phusion_passenger/classic_rails/application_spawner.rb:321:in `start_request_handler' passenger (3.0.1) lib/phusion_passenger/classic_rails/application_spawner.rb:275:in `block in handle_spawn_application' passenger (3.0.1) lib/phusion_passenger/utils.rb:479:in `safe_fork' passenger (3.0.1) lib/phusion_passenger/classic_rails/application_spawner.rb:270:in `handle_spawn_application' passenger (3.0.1) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop' passenger (3.0.1) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously' passenger (3.0.1) lib/phusion_passenger/abstract_server.rb:180:in `start' passenger (3.0.1) lib/phusion_passenger/classic_rails/application_spawner.rb:149:in `start' passenger (3.0.1) lib/phusion_passenger/spawn_manager.rb:219:in `block (2 levels) in spawn_rails_application' passenger (3.0.1) lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add' passenger (3.0.1) lib/phusion_passenger/spawn_manager.rb:214:in `block in spawn_rails_application' passenger (3.0.1) lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize' :10:in `synchronize' passenger (3.0.1) lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize' passenger (3.0.1) lib/phusion_passenger/spawn_manager.rb:213:in `spawn_rails_application' passenger (3.0.1) lib/phusion_passenger/spawn_manager.rb:132:in `spawn_application' passenger (3.0.1) lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application' passenger (3.0.1) lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop' passenger (3.0.1) lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously' passenger (3.0.1) helper-scripts/passenger-spawn-server:99:in `'
ruby1.9系だと動かないみたいなので,1.8.6 か 1.8.7を使用すると動きました. http://www.redmine.org/issues/4824
ブログ始めました
たぶんこれでブログ始めたの5回目くらいだけど,今回は3日坊主にならないように有益なブログにしていきたいと思います.