skillup

技術ブログ

サーバー・ネットワーク

環境構築の手法について

投稿日:2019年9月15日 更新日:

2019年9月現在、PHPは7系(最新は7.3)を使うことが一般的ですが、たまにレガシー案件などでPHP5系を使ったりすることはあります。

まあ7系でも7.0じゃ動かないとか色々な制約あるんですけど・・・

その時にローカルでの環境構築が色々大変だったので、手法別にメモしておきます。

どの手法もそれぞれめんどいです(汗)

phpenv+phpbuild

別バージョンのPHP自体を自分のローカル環境に入れる方法です。コマンドラインやバッチ系のみであればこれが楽かもしれません。

難点としてはPHPの場合、画面から確認するケースがほとんどなのでapacheの設定もいじらないといけないことやその他のライブラリのバージョン状態も影響してくるのでその時にこけることが結構あったりします。

参考リンク

phpenv+php-build 複数のPHPのversionを使いわけ

apacheで複数インスタンスの起動

Vagrant+Virtualbox

昔からある仮想環境構築ツールです。現在のパソコンの中に別OSを入れるようなものですので、外部は一切干渉を受けません。

その開発環境のvagrantイメージを持っている方などがいる場合にはこれを入れれば最短で環境構築が可能です。

その場合、開発が楽ですし、内部での影響を一切受けないのですが、メモリ+HDをかなり使います。メモリは2Gぐらいが一般的ですかね。

HDはvagrantイメージにもよりますが、5〜10Gぐらいを使うことが多いため、複数のvagrantを入れておくなどはあまり現実的出ないかもしれません。私は2つ入れた時点で容量オーバー寸前まで行きました。

メモリ自体が2Gと少ないことが多いので大きいメモリを食うような処理だと止まることもあります。特にcomposerでのインストールで何度か痛い目にあいました(汗)。

参考リンク

vagrantの記事

docker

vagrantとは違った仮想環境ツールです。

vagrantのようにPC全体でなく、ミドルウェアの仮想化の部分らしいので、かなり軽量です。(数秒で起動可能)

HDの容量もvagrantほど食いませんので複数の環境をガンガン入れたりすることは可能ですし、色々なバージョンのテンプレートのようなものが結構用意されているので目的の環境を復元できます。

ただ学習コストがやや高く、慣れるまで結構難しい印象です。メモリ自体も小さいのでメモリをかなり使うような作業だと止まります・・・

参考リンク

dockerの記事

-サーバー・ネットワーク
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

mod_rewriteについて

本日はapacheのmod_rewriteについて。 例えばget句に郵便番号を付けて、住所を出力するWEBプログラムがあるとします。 この場合、そのままだと[crayon-5f70ecdea34a5 …

no image

AWSセキュリティグループについて

AWSのセキュリティグループに関して。 AWSには標準でセキュリティグループという概念があり、それぞれのインスタンスに対して、アクセスするパケットをポート番号で制御でき、この定義をセキュリティグループ …

no image

25番ポートブロッキング

ほぼ一般常識に属するようなことを知らなかったため、メモ。 先日メールアカウントを開設した際に自分の環境では送信できるのに、他人の環境では送信できないということが発生しました。 最初はoutlookの設 …

no image

ansible host指定,変数の外だし,ユーザー追加

Ansibleにてhostユーザーやユーザーの追加などす。 Contents1 ホストの指定2 ユーザーの追加2.1 変数を別ファイルに2.2 パスワードのハッシュ化2.3 パスワードなしでsudo2 …

no image

Linuxでのパス

以前、composerを入れるときに、こちらの記事を書いたのですが、自分が使っているVPSではこの方法で入りませんでした。 調べるとみるとPATHが[crayon-5f70ecdea52d765301 …