はじめに
今回はphpenvの導入~使用方法までを紹介します。
-
導入の発端
Jenkinsのビルド時にジョブごとにPHPのバージョンの切り替えを可能にして
依存関係エラーの解消をするために使用。
Jenkinsのシェルからコマンドを打つ場合は、
最初にsource ~/.bash_profileを実行しないと.bash_profile
は反映されない。
インストール
phpenv
$ git clone https://github.com/phpenv/phpenv.git ~/.phpenv
環境変数へ追記
$ echo 'export PATH="$HOME/.phpenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(phpenv init -)"' >> ~/.bash_profile
$ exec $SHELL -l
シェルの再起動
$ exec $SHELL -l
php-build
$ git clone https://github.com/php-build/php-build $(phpenv root)/plugins/php-build
phpenvからダウンロード可能なバージョンを確認
$ phpenv install -l
PHPをインストール
$ phpenv install {version}
パッケージエラーが多発する可能性があるため
yumで追加、更新する必要がある。
PHPでlibzipを動作させるためには、libzip0.11以上のバージョンが必要だが
yumで入れる場合は、0.10.1までなので公式サイトからダウンロードが必要。
コマンド
切り替え可能なバージョン一覧を表示
$ phpenv versions
カレントディレクトリでPHPを切り替え
$ phpenv local {version}
システム全体のPHPを切り替え
$ phpenv global {version}
hashの更新
$ phpenv rehash
アップグレード
$ cd ~/.phpenv
$ git pull
参考