Dockerでふるーーいphp5.2環境の構築
PHPの古い環境用意するのに、調べたこと、やったことをメモ。
参考
これだとurlがrewriteに対応していないので追加
docker pull image
dockerイメージを取得します
docker pull tommylau/php-5.2
docker pull tommylau/nginx
docker pull mysql:5.7
docker pull tommylau/nginx
docker pull mysql:5.7
docker image list
itkaasan@itkaasan-ThinkPad:~/work/$ docker image list REPOSITORY TAG IMAGE ID CREATED SIZE mysql 5.7 2f52e94d8acb 12 days ago 373MB tommylau/nginx latest 75d215ac1943 12 months ago 109MB tommylau/php-5.2 latest 7e7ee5c92d52 13 months ago 371MB
my.cnfとnginxの設定ファイルをコンテナからコピー
MySQLの設定ファイルとnginxの設定を上書きしたいので設定ファイルをコンテナからマシンにコピーします、
※取り急ぎコピーして作ったものを記事の一番最後に貼っておきます
docker cp [コンテナ名]:[コンテナのディレクトリ] [ホストのコピー先ディレクトリ]
docker cpコマンドにて設定ファイルを複製しました。
あとはこのファイルをカレントディレクトリに置いて、起動させます
hogeディレクトリを、マウントディレクトリとしてrunコマンドで起動・開始します
mysql5.7コンテナを作成
hogehogeという名称のDBも一緒に作成しました
docker run –name mysql5.7 -v ~/hoge/my.cnf:/etc/mysql/my.cnf -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=hogehoge
mysql5.7とリンクしながらphp5.2の入ったコンテナを起動
docker run –name php -v ~/hoge:/var/www/html –link mysql5.7:mysql -d tommylau/php-5.2
php5.2とリンクしつつ、nginxを起動
docker run –name nginx -v ~/hoge:/var/www/html -v ~/hoge/default.conf:/etc/nginx/conf.d/default.conf –link php:php -p 9000:80 -d tommylau/nginx
http://localhost:9000
で、アクセスできます
取り急ぎ無事動きを確認してからと思ったのでdocker-composeに対応していません。。今度対応しよう。。
docker -v オプションで、コンテナにファイルを上書きできるっていうのは初めて知った。