PEARのリモートインストール May 23, 2009
Rating: 2.5

PHPライブラリ”PEAR”は、pearコマンドを用いて依存性の解決を含めたパッケージ管理を行うことができる。

さらにPEAR_RemoteInstallerというパッケージを用いることで、リモートサーバもメンテできる。

処理の流れ

パッケージ管理はローカルマシンで行なう。依存性を解決したライブラリが一度ローカルで構築される。 リモートサーバにはFTP(SFTP, FTPSも使える)で転送されるだけなので、セーフモードなどの制約を受けることがない。

必要なソフト

ソフトウェアはローカルマシンにセットアップしておく。 まずPEARが必要。ubuntuの場合、sudo apt-get install php-pearなど。

次にsudo pear install PEAR_RemoteinstallerでRemoteinstallerパッケージをインストールする。 pear remote-install などのリモート系サブコマンドがうごけばOK。

設定ファイル作成

これが分かりづらい。 共有ホストでの PEAR のローカルコピーのインストール(phpプロ)の「PEAR 1.4.3 以降と PEAR_RemoteInstaller を使う改良インストール法」手順4~6の通りではあるが、補足が必要だろう。

まず、ローカルマシンにワーキングディレクトリを作る。 ワーキングディレクトリに移動して、ローカルマシンに置く設定ファイル(ここでは”remote.conf”)を生成する。

$ pear config-create /ワーキングディレクトリのパス remote.conf

次に、リモートサーバに置く設定ファイル(ここでは”.pearrc”)を生成する。

$ pear config-create /アップロード先のパス .pearrc

アップロード先のパスで指定した位置に最終的なPEARライブラリがインストールされる。 pear config-createコマンドによって、remote.confと.pearrcはローカルマシンのカレントディレクトリに生成される。

ここで、.pearrcは、FTPでリモートサーバのどこかにアップロードする。

さらにFTPアカウント情報と.pearrcの位置を下記のコマンドでremote.confに書き込む。

$ pear -c remote.conf config-set remote_config ftp://user:pass@myremotehost.com/.pearrc

  • -c remote.confが書き込み先の設定ファイル指定。ここでは、ローカルマシンのカレントディレクトリのremote.conf
  • remote_configは、設定ファイル中の変数。設定される値は最後の引数(ftp:~)
  • 最終引数のuser:passは、FTPアカウントのログインIDとパスワード。myremotehost.comはFTPサーバ。/.pearrcは、.pearrc設定ファイルのアップロード先に合わせて設定。

リモートインストールコマンド

設定ファイルを配置し終われば、remote-installコマンド一発でPEARパッケージをリモートインストールできるようになる。

$ pear -c remote.conf remote-install -a Services_Amazon-beta

などのように使う。FTPクライアントで接続すれば、指定した場所にファイル一式がインストールされているかを確認できる。

Comments are closed.