Archive

Posts Tagged ‘DreamHost’

DreamHost、One-Click InstallsにTracが追加!

5月 30th, 2009

インストールが面倒くさいことこの上ないTracですが、DreamHostのOne-Click InstallsにTracが追加されました!
これで、ワンクリックでTracがインストールできるようになりました。

…candycaneが公開されたらそちらを使う予定ですが ;)

Categories: 一般 Tags: ,

新サーバーへ!

3月 21st, 2009

Dreamhost はいつ頃からか、ストレージと転送量の制限が完全に無くなりました。しかし、これは新サーバーでの話であって、既存ユーザーはデータ移動リクエストをしなければ元のままでした。私は、移行が面倒くさかったので新サーバーへは移しませんでした。

ところが先日、Deamhost から「サーバー移すよー」のメールが来て新サーバーへ引越ししました。これだけで済めばよかったんですが、なんと新サーバーは64bit。メモリは16GBです。

自分でコンパイルした PHP、Python・・・などはコンパイルし直しです。依存ライブラリもコンパイルし直しです。疲れました。

そんなわけでとりあえず移行しましたが、どこか不具合があるかもしれません。ページが見れないなどがありましたら、お知らせくださるとありがたいです。

Categories: 一般 Tags:

DreamhostでBazaarスマートサーバー

2月 19th, 2009

Bazaarのマニュアルをみていたら、「Bazaar スマートサーバー」というものがあり、おもしろそうだったので、Dreamhost でやってみました。Bazaar スマートサーバーを入れると「bzr+http://」が使えるようになり、push もできます。以下その記録。

http://example.com/ に構築する例でやります。なお、Python はビルドしたもので、~/local/bin/python とします。Bazaar もインストール済みで。

http://example.com/.htaccess

Options ExecCGI FollowSymLinks
RewriteEngine On
RewriteRule ^(.*/|)\.bzr/smart$ bzr-smart.fcgi [L]

PYTHONPATH の通っている site-packages に http://svn.saddi.com/py-lib/trunk/fcgi.py を置く。

http://example.com/bzr-smart.fcgi

#!/home/user/local/bin/python
import fcgi
from bzrlib.transport.http import wsgi

smart_server_app = wsgi.make_app(
    root=‘/home/user/example.com’,
    prefix=‘/’,
    path_var=‘REQUEST_URI’,
    readonly=False,#読み込み専用かどうか
    load_plugins=True,
    enable_logging=True)
fcgi.WSGIServer(smart_server_app).run()

これで bzr push bzr+http://example.com/branch や bzr branch bzr+http://example.com/branch ができます。

http://example.com/.htaccess で認証をかけることもできます。

Categories: 一般 Tags: ,

Dreamhostまとめ

2月 5th, 2009

このブログは、Dreamhost で運営しています。Dremahostは高機能で安いのがうりですが、その機能についてまとめておきたいと思い、まとめてみました(2009/2/5の時点で)。ドルの横のカッコ内は$1=89円で計算してみた結果です。

コア資源

ストレージ 無制限+バックアップ50GB
転送量制限 無制限
MySQL 5 データベース 無制限
OS Debian Linux

ユーザーアカウント

E-Mail アカウント (POP/IMAP) 無制限
シェル/FTP ユーザー 無制限

E-mail

POP / SMTP アクセス Yes
IMAP アクセス Yes
Webメール Yes
Procmail フィルター Yes
スパムフィルタ – SpamAssassin Yes
独自ドメインGmail Yes
メールアドレスエイリアス 無制限
アナウンスリスト(メーリングリスト) 無制限
ディスカッションリスト(メーリングリスト) 無制限
自動返信 無制限

ドメイン

無料ドメイン登録 Yes
無料ドメイン WHOIS Yes
ホストできるドメイン 無制限
ホストできるサブドメイン 無制限
転送/ミラー ドメイン 無制限
カスタムDNS Yes

プログラミング

PHP5 サポート Yes
Perl サポート Yes
Python サポート Yes
フル Unix シェル Yes
Crontab アクセス Yes
フル CGI アクセス Yes
Ruby On Rails Yes
CGI スプリクト Yes
Server Side Includes (SSI) Yes
CVS レポジトリー Yes
Subversion レポジトリー (SVN) Yes

上級機能

SSL Secure Server (ユニークIPが必要) Yes
Web セキュリティー増強 Yes
WebDAV Yes
データバックアップのスナップショット Yes
アクセス統計 Yes
Apacheの生ログへのアクセス Yes
DreamBook.comのアカウント Yes
パスワード保護ディレクトリ (.htaccess) Yes
RealAudio & 動画 (http ストリーム) Yes
QuickTime ストリーミング Yes
匿名 FTP サーバー (ユニークIPが必要) Yes
Jabber チャットサーバー Yes

1クリック自動インストール

WordPress Yes
Gallery Yes
ZenCart Yes
PhpGedView Yes
Pligg Yes
dotProject Yes
Moodle Yes
Joomla Yes
phpBB Yes
MediaWiki Yes
WebCalendar Yes
Advanced Poll Yes

テクニカルサポート

24時間テクニカルサポート (E-Mail) Yes
97日間のお試し期間 Yes
Web コントロールパネル (デモあり) Yes
DreamHost Wiki Yes
DreamHost Forum Yes

アカウントアップグレート

ドメイン追加登録 $9.95/年(886円/年)
ユニークIPアドレス $3.95/月(352円/月)
プレミアム 電話サポート (3回/月) $9.95/月(886円/月)
VPN アクセス $19.95/月(1776円/月)
SSL証明書 (ユニークIPが必要) $99.95/年(8896円/年) 又は 持込

その他

シェルは、bash、tcsh、ksh、zsh が使えます。
.htaccess はほぼフルに使えると思って大丈夫です。mod_rewrite も使えます。
また、Procmail でメールをトリガーにPHPなどを起動することもできます。
入っている PHP や Python が気に入らなければ、自分でコンパイルしたものを使用することができます。
Google Apps は1クリックで設定できます。

料金のほうですが、プロモーションコードとして「DHREGEN」を用意しました。これを登録時に入力すると料金が割引されます。

期間 価格 「DHREGEN」使用時の割引額(1年目のみ)
1ヶ月 $60.90(5421円) $51.00
1年 $119.40(10627円) $97.00
2年 $214.80(19118円) $97.00
3年 $286.20(25472円) $97.00
5年 $417.00(37113円) $97.00
10年 $714.00(63546円) $97.00

(追記)Dreamhostの方で割引額の上限を$50に制限しているようなので、すべて$50の割引になります。

Categories: 一般 Tags:

trac-post-commit-hookをDreamHostで使う

6月 8th, 2008

SVNのログでチケットの操作ができるとっても便利なtrac-post-commit-hookですが、DreamHostで使うには難がありました。
最大の難点は post-commit が dhapacheというユーザーで実行されるということで、これが数々の問題を引き起こします。
色々と実験して解決策を見つけたのでポストします。
なお、解決策は SQLite を使っている場合と MySQL を使っている場合で異なります。

SQLite と MySQL の共通 post-commit

コミット後にスクリプトを実行するため、/home/***/svn/projectid/hooks に post-commit という名前のファイルを作成します。
このファイルがコミット後に実行されるわけですが、dhapache によって実行されるため環境変数の再設定が必要になります。
それなので、.bash_profile などから必要な変数をコピーします。
そして、trac のソースの contrib ディレクトリから trac-post-commit-hook を post-commit と同じディレクトリにコピーします。
さらにsvn_commit_jp.mdから svnlog2utf8 を取得してパスの通るところに置いて実行権を与えます。

post-commitの例(パスなどは適宜変えてください):

#!/bin/sh

HOME=‘/home/***’
export PYTHONPATH="$HOME/local/lib/python: $HOME/local/lib/python/site-packages"
export LD_LIBRARY_PATH="$HOME/local/lib"
export PYTHON_EGG_CACHE="$HOME/tmp"
export PATH="$HOME/local/bin:$PATH"

REPOS="$1"
REV="$2"

LOG=`svnlook log -r $REV $REPOS | svnlog2utf8`
AUTHOR=`svnlook author -r $REV $REPOS | svnlog2utf8`
TRAC_ENV="$HOME/trac_sites/projectid/"
TRAC_URL="http://trac.example.com/projectid/"

python $REPOS/hooks/trac-post-commit-hook \
  -p "$TRAC_ENV"  \
  -r "$REV"       \
  -u "$AUTHOR"    \
  -m "$LOG"       \
  -s "$TRAC_URL"

SQLiteの場合

SQLiteの場合は dhapache が trac のディレクトリの /db/trac.db(デフォルト) へアクセスする権限を持っていないため、エラーになります。
この場合は trac.db に「chmod o+rw」するしか方法がないと思います。書き込み権限を与えるのはやだなと思うときはMySQLの移行も考えてください(MySQLへのパスワードも dhapache が読み取れる必要があるので同じっていえば同じですが)。

MySQLの場合

MySQLの場合は、上で設定した「PYTHON_EGG_CACHE」の値が dhapache が書き込みできるディレクトリを指定していて、trac.ini を読み込めればOKです。

SQLite から MySQLへの移行

SQLite から MySQLへの移行は SqliteToPgScript を使うと便利です。
SqliteToPgScript でMySQLインポートしたら、trac.ini の database の指定を「mysql://user:password@host/database」のようにすればOKです。

Categories: メモ Tags: ,

DreamHostにカスタムPHPをインストールする

5月 25th, 2008

DreamHostにはPHPが元々入ってますが、PECLなどの拡張ライブラリが使用できません。
加えてバージョンが古いのです。そこでPHPを自分でコンパイルしてインストールしました。

参考にしたのは、Installing PHP5 – DreamHost

基本は上のページのスクリプトでインストールできるのですが、インストール場所を変えるためと依存パッケージを新しくするために書き直しました。
変更点は以下の通りで、

  • PHP 5.2.6
  • インストール先を $HOME/local に変更
  • php.iniの場所を ${HOME}/etc/php5 に変更
  • パッケージを最新のものに変更
  • パッケージのURLを修正

などです。

まず PHP5インストールスクリプト をダウンロードして中身を解凍し、php5-install.sh の中の INSTALLDIR などを好きなように設定します。
初期状態でインストールした場合は /home/*****/local/bin/php がPHPバイナリとなります。
php5-install.sh を実行し、問題が無ければPHPが指定した場所へインストールされます。
後はサイト毎のfcgiファイルでexecの部分を「exec /home/*****/local/bin/php-cgi」と指定すればFastCGIでカスタムPHPが動きます。
「php-cgi」が要で、CLI版を指定してしまうとFastCGIが動きません。

このあとPECLなどを使う場合はパスが通っている必要があるので .bash_profile などに「export PATH=$HOME/local/bin:$PATH」などと指定しておきます。

スクリプトが途中で止まる・・・などあったらコメント下さい。

Categories: 一般 Tags: ,

DreamHostにTracをインストール

5月 11th, 2008

大体は以下のサイトを参考にしてインストールしました。

インストール中に気づいたことは、自分で入れた Python と DreamHost に入っている Python を区別しなければいけないということ。

普通に python とタイプすると、DreamHost の Python が起動するので、意図したディレクトリに格納されない場合がありました。Python のインストールが終わった時点で自分の Python をエイリアスしておくといいと思います。「alias python=”/home/*****/local/bin/python”」などです。

あと、上記サイトにあるように、Subversion のインストール時に APR と APR-Util をインストールしておかないと止まります。

trac をサブディレクトリに配置して運用する場合は、.htaccess の「RewriteEngine On」の後に「RewriteBase /projectid/」などを指定しておく必要があります。

trac入れるのって面倒くさいですね・・・

Categories: 一般 Tags: , ,