RailsをchrootなDebian環境で
提供: SmileLogicWiki
←Linuxメモに戻る。
目次 |
いきなりDebian GNU/Linux 4.0(ETCH)環境なchrootは作れない!?
どうも駄目らしい。 etchでdebootstrap を参考に。
$ sudo cdebootstrap sarge /var/etchroot http://ftp.jp.debian.org/debian/
# echo "proc-sid /var/etchroot/proc proc none 0 0" >> /etc/fstab # mount proc-sid /var/etchroot/proc -t proc # cp /etc/hosts /var/etchroot/etc/hosts # cp /etc/resolv.conf /var/etchroot/etc/resolv.conf # chroot /var/etchroot /bin/bash
これで一応、Debian GNU/Linux 3.1(sarge)環境に入れる。
etch環境にupgrade
/etc/apt/source.list を書き換えた上で。
# cat /etc/apt/sources.list deb http://ftp.jp.debian.org/debian/ etch main contrib non-free deb http://security.debian.org/ etch/updates main contrib non-free
(chroot)# aptitude update (chroot)# aptitude --download-only dist-upgrade (chroot)# aptitude dist-upgrade
ちょっとした設定をする。
(chroot)# vi /root/.profile (追加) LANG=C (追加) LANGUAGE=C
必要なパッケージを一気に入れる
(chroot)# aptitude install perl m4 bison flex make gettext libncurses5-dev tar autoconf automake binutils gcc g++ libc6-dev gawk fileutils bzip2 libtool zlib1g-dev libreadline4-dev
初期化処理
(chroot)# shadowconfig on <- shadow パスワードを有効 (chroot)# passwd <- root パスワードを変更 (chroot)# tzsetup <- タイムゾーンの設定
MySQLは、親のものを利用するのでクライアントのみ
(chroot)# aptitude install mysql-client-5.0 libmysqlclient15-dev
Ruby&Railsインストール
(chroot)# aptitude install libfcgi-dev (chroot)# aptitude install ruby1.8 rdoc1.8 (chroot)# wget http://rubyforge.org/frs/download.php/29548/rubygems-1.0.1.tgz (chroot)# tar xvfz rubygems-1.0.1.tgz (chroot)# cd rubygems-1.0.1 (chroot)# ruby setup.rb (chroot)# gem1.8 install rails capistrano fcgi mysql --include-dependencies (chroot)# gem1.8 install mongrel mongrel_cluster --include-dependencies
rubygems でインストールされたリストは以下のコマンドで。
(chroot)# gem1.8 list *** LOCAL GEMS *** actionmailer (2.0.2) actionpack (2.0.2) activerecord (2.0.2) activeresource (2.0.2) activesupport (2.0.2) capistrano (2.1.0) fcgi (0.8.7) highline (1.4.0) mysql (2.7) needle (1.3.0) net-sftp (1.1.0) net-ssh (1.1.2) rails (2.0.2) rake (0.8.1)
親DebianのMySQLを利用する
# mkdir -p /var/etchroot/var/run/mysql # ln /var/run/mysqld/mysqld.sock /var/etchroot/var/run/mysql/ ??? TCP経由じゃないとエラーになる!? conf/database.yml host: localhost -> 127.0.0.1 localhost だと mysqld.sock を利用 172.0.0.1 だと TCP を利用?
参考URL
- chrootなDebian環境を作ってRailsを閉じ込める
- etchでdebootstrap
- Debianでchroot環境を作る
- mongrel_cluster
- 2007/04/22-01、php5とphp4の共存環境を作る
←Linuxメモに戻る。