slicehostでRails2.2.2を動かすまで

DreamhostでどうしてもRails2.2.2にできなかったので,カッとなってやってしまったログ.

slicehostに登録する

まあ普通に.いわゆるアレ張っておきます:).

https://manage.slicehost.com/customers/new?referrer=49a030fcbd9a4d672c26bd8e55597026

OS は慣れてる Ubuntu 8.04.1 を.

Ubuntu 8.04.1 の構築

日本語

まずログインしてHugeDomains.com - Shop for over 300,000 Premium Domainsを参考に.

# dpkg-reconfigure tzdata      # Asia -> Tokyo
# apt-get install language-pack-ja
# dpkg-reconfigure locales
# update-locale LANG=ja_JP.UTF-8
% exit
接続まで
# apt-get update
# apt-get install zsh
# useradd -m rust -s /usr/bin/zsh
# su - rust
$ ssh localhost
$ vim .ssh/authorized_keys

公開鍵接続できる状態になったので,

# vim /etc/ssh/sshd_config

PermitRootLogin no
UsePAM no

# /etc/init.d/ssh reload
MySQL

MySQL 5.0のインストール

% sudo apt-get install mysql-server-5.0
% sudo cp /etc/mysql/my.cnf /etc/mysql/my.cnf.default
% sudo vim /etc/mysql/my.cnf

key_buffer              = 64K
max_allowed_packet      = 1M
thread_stack            = 64K
thread_cache_size       = 4
#max_connections        = 100
#table_cache            = 64
#thread_concurrency     = 10
sort_buffer             = 32K
read_rnd_buffer_size    = 32K
join_buffer_size        = 32K
read_buffer_size        = 32K
myisam_sort_buffer_size = 32K
net_buffer_length       = 2K

メモリ食う InnoDB はズバっとあきらめてみる,ひとまず.

Ruby/Rails

Welcome — Ruby Enterprise Editionをインストールしてみる.どうもまず Ruby が入ってないと,プラットフォームを uname -m で見るらしく,x86_64 とかになってインストールできません.なので,通常の Ruby をセットアップ後に削除する方法で.

% sudo apt-get install ruby1.8-dev ruby1.8 ri1.8 rdoc1.8 irb1.8 libreadline-ruby1.8 libruby1.8 libopenssl-ruby libmysqlclient15-dev
% sudo ln -s /usr/bin/ruby1.8 /usr/local/bin/ruby
% sudo ln -s /usr/bin/ri1.8 /usr/local/bin/ri
% sudo ln -s /usr/bin/rdoc1.8 /usr/local/bin/rdoc
% sudo ln -s /usr/bin/irb1.8 /usr/local/bin/irb
% mkdir sources; cd sources
% wget http://rubyforge.org/frs/download.php/41040/ruby-enterprise-1.8.6-20080810.tar.gz
% tar zxvf ruby-enterprise-1.8.6-20080810.tar.gz
% sudo apt-get install build-essentials libssl-dev
% cd ruby-enterprise-1.8.6-20080810
% sudo ./installer
% export PATH=/opt/ruby-enterprise-1.8.6-20080810/bin:$PATH
% sudo rm /usr/local/bin/irb /usr/local/bin/rdoc /usr/local/bin/ri /usr/local/bin/ruby
% sudo /opt/ruby-enterprise-1.8.6-20080810/bin/gem install rubygems-update
% sudo /opt/ruby-enterprise-1.8.6-20080810/bin/update_rubygems
% sudo vim /etc/login.defs

環境変数なりに /opt/ruby-enterprise-1.8.6-20080810/bin を追加.

Apacheのインストール
% sudo apt-get install apache2 apache2.2-common apache2-mpm-prefork apache2-utils apache2-prefork-dev
% sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.default
% sudo vim /etc/apache2/apache2.conf
% sudo cp /etc/apache2/site-available/default /etc/apache2/site-available/default.default
% sudo vim /etc/apache2/site-available/default
Passengerのインストール
% sudo gem install passenger
% sudo su -
% sudo /opt/ruby-enterprise-1.8.6-20080810/bin/passenger-install-apache2-module
% sudo vim /etc/apache2/mods-available/passenger.conf
% sudo vim /etc/apache2/mods-available/passenger.load
% sudo ln -s /etc/apache2/mods-available/passenger.conf /etc/apache2/mods-enabled/
% sudo ln -s /etc/apache2/mods-available/passenger.load /etc/apache2/mods-enabled/

動作確認

% cd ~/sources
% rails test
% cd test
% ruby script/server

ひとまず動くところまでできた.

追記

Passengerの動作確認してなかったので,追加.

% cd ~/sources
% ruby script/generate controller sample
% vim app/views/sample/index.html.erb
----
hello
----
% vim app/controllers/sample_controller.rb
----
  def index
  end
----

Passengerの設定の抜粋

<VirtualHost *>
        ServerAdmin rust.stnard@gmail.com
        ServerName exsample.slicehost.com
        DocumentRoot /home/conceal-rs/sources/test/public
        PassengerRuby /opt/ruby-enterprise-1.8.6-20080810/bin/ruby
        PassengerMaxPoolSize 2
</VirtualHost>

これで,http://IP_ADDRESS/sample/index にアクセスして hello が表示された.

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy