練習のためにvagrantでcentos環境を作ってLaravelを導入したりを繰り返し、だいたい操作は覚えた感じです。
となるといい加減に毎回環境を作るのは大変なので、完成させたイメージを保存する方法を備忘録しておきます。
やり方は簡単で、vagrant packageをするだけ。
といっても環境を完成させた後に行う。
環境とは、CentOS7を入れてhttpdを入れてphpを入れてLaravelを入れて・・などの開発環境。
一応前回の続き的な感じなので、詳しくはこちらを参照
環境を作り終えたら一旦sshから抜けて、Mac側に戻る。
$ exit
vagrantのコマンドなので、sshで入った先ではできません。
完成させた環境をboxイメージにするには
$ vagrant package
とする。
vagrantコマンドはこちらでまとめております。
すると同じディレクトリ内にpackage.boxというファイルができる。
これが保存されたイメージ。
それをbox addでbox listに保存する。
$ vagrant box add [好きな名前] package.box //今回は下記にしておく $ vagrant box add Laravel package.box
boxに追加されたかを確認するには
$ vagrant box list
このイメージを使って、新たに環境を作ればいい。
// 現在の環境から抜けて、新規の環境用フォルダで // 作ったboxイメージを使って仮想マシンを初期化 $ vagrant init Laravel // Vagrantファイルを編集 $ vi Vagrant // 仮想環境を立ち上げる $ vagrant up
という流れ。詳しくは上記の開発環境構築を御覧ください。
ちなみに、Laravel関連のディレクトリやファイルは引き継がれません。
ゆえにcomposerを使ってLaravelをインストールしなければいけない。
また、上記ドットインストール環境のように、httpdを自動起動するようにしていても、起動しない。
なぜならドキュメントルートであるLaravelディレクトリが存在しないから。
やることはcomposer create-projectでLaravelをインストールするか、Laravelフォルダをお引越しする。
そしてhttpdを起動する。
後は192.168.33.10なりアクセスすればLaravelのページが表示されるはずです。
イメージ化することで、Laravelプロジェクトのディレクトリ以外は完全に移植できた感じです。
と過程するとLaravelプロジェクトに対して変更をかけたものは再度やり直さなければならないということ。
ゆえにこれを行っておきます。
$ chmod -R 777 /var/www/html/myblog/storage/ $ chmod -R 777 /var/www/html/myblog/bootstrap/cache
これで同じ環境になったはずです。
以上です。
コメント