docker コンテナでphpenvの環境を構築
環境
- debian 8(コンテナ)
- phpenv 1.1.1-2
まず初めに
dockerが好きでなんでもdockerでしてみたい、そして環境もdockerで用意したい、と思いコンテナでphpの環境を作りました。
自分の思考的に、、、どうしてもdebianベースでコンテナを用意してしまいます。
実際に行った内容をメモ的な感じで書いていきます。
Dockerfileはめんどくさいんで作りません。もしコンテナとしてサーバに展開してバージョン管理するなら、作りますが、、、
準備
コンテナ起動
docker run -it -d ~~~~~ --name php debian:8 /bin/bash
必要なパッケージのインストール
docker exec -it php /bin/bash apt-get install git gcc g++ make file autoconf automake libxml2-dev bzip2 libbz2-dev libssl-dev re2c libcurl4-openssl-dev pkg-config libjpeg-dev libpng-dev libmcrypt-dev libreadline6 libreadline6-dev libtidy-dev libxslt-dev
phpenvのインストール
git clone https://github.com/CHH/phpenv.git phpenv/bin/phpenv-install.sh
※phpenv-install.shで~/.phpenvが作られるため、すでに作成されていないか確認。すでにある場合は削除。
phpenv-の環境パスの設定
~/.bashrcに追記
PATH=$HOME/.phpenv/bin:$PATH eval "$(phpenv init -)"
反映
source ~/.bashrc
php-buildのインストール
git clone https://github.com/CHH/php-build.git ~/.phpenv/plugins/php-build
これでinstallコマンドが使えるようになった。
PHPのセッティング
PHPのインストール
今回は7.0.8をインストール
phpenv install 7.0.8
下記、ログで成功
[Info]: Enabling Opcache... [Info]: Done [Info]: The Log File is not empty, but the Build did not fail. Maybe just warnings got logged. You can review the log in /tmp/php-build.7.0.8.20170627162000.log [Success]: Built 7.0.8 successfully.
失敗したらその都度、トライアンドエラーで対処。
インストールしたPHPを指定
phpenv global 7.0.8 phpenv rehash
PHPのバージョン確認
php -v PHP 5.6.30-0+deb8u1 (cli) (built: Feb 8 2017 08:50:21) Copyright (c) 1997-2016 The PHP Group Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
これで自分のPCでPHPの環境の準備完了。