Vagrant関係メモ

Vagrant関係での困ったこととその対処方のメモ。

と言っても、基本相方にお願いしちゃってるから解決にあまり困ってない。
※逐一更新項目。

最低限覚えておくコマンド

  1. 『vagrant up』ローカルサーバ起動 ※初回が特に時間がかかるよ!
  2. 『vagrant halt』ローカルサーバ終了
  3. 『vagrant up --provision』ローカルサーバを再構築・更新 ※時間がかかるよ!

とりあえず、これだけ覚えておけば、最低限使うに困らない。
他に知りたければ『【まとめ】Vagrant コマンド一覧』あたりがオススメ。
provision機能を使うと便利らしいよ『Vagrantのprovisionでローカル開発環境をupと同時に整える (`・ω・´)ゞ|杏z 学習帳

共有ディレクトリの変更

VirtualBoxで変えても変えても共有ディレクトリが変わらないと思ったら、vagrantの設定ファイルの方を変更が必要だったという話。
vagrantコマンドを実行するディレクトリにある『Vagrantfile』の下記の部分を書き換える

#  config.vm.synced_folder "PCのディレクトリ", "仮想環境内ディレクトリ", :mount_options => ["dmode=権限", "fmode=権限"]
# 例↓
  config.vm.synced_folder "d:/www", "/vagrant", :mount_options => ["dmode=777", "fmode=777"]

仮想環境にアクセスするIPアドレスを変更

『Vagrantfile』で下記を変えたいIPに変更する。
コメントアウトされていたら解放を忘れずに!

  config.vm.network "private_network", ip: "192.168.33.10"

外部読込させたjsやmp3がスーパーリロードしても更新されない

最初ブラウザのせいかと思って、metaでcacheを消したりしたが変わらず。
スーパーリロードしても変わらない時点でオカシイのだけど、念のため他のブラウザで確認したところ、同じキャッシュが残っていた。
そんな場合は自分のローカル環境が原因です。
apache自身がキャッシュ残すなんてことは、2015年初めて知ったんだ…

httpd.confに下記を追記して再起動で解決だそうで…

<Directory [対象のディレクトリ]>
EnableMMAP Off
EnableSendfile Off
</Directory>

※参照:VirtualBox - 静的ファイルがキャッシュされる(ブラウザキャッシュじゃない場合) - Qiita

PHPインストール済みなのに、PHP実行系bashが実行されない!

単純に作成者が意図したPHP実行パスと自分の環境のパスが違うことがあるよ。
perlとかPHP以外にもあり得る現象。
bashしたら/usr/local/bin/phpがNo suchなんですって

vagrantのboxを軽量化して作る

vagrant起動時の高速化とかして文章量増えたから、別ページに置いた
vagrant用のboxサイズを小さくしたい

PuPHPetを使いvagrant環境を設定

vagrantを設定するのに、PuPHPetを使った方が簡単。
PuPHPetでの設定メモ

Windows10のアプデ後、VirtualBoxが起動しない

アップデート後、ローカルサーバが起動しない。
VirtualBoxでサーバ状態を確認しようとするも、そもそもVirtualBox自体が起動しない状態。
原因は、使っていたVirtualBoxやvagrantが、更新されたWindowsと相性が悪いこと。
『VirtualBox』や『Vagrant』を新しいバージョンにアップデートしませう。
アップデート失敗する場合は、1回アンインストールして、新しく入れ直してください。
入れ直しになったとして、サーバ自体は残っている。何かの間違いがなければ。

アクセス出来ないホスト名がある

ちょっと前まで使えていたローカルサーバが突然ブラウザから使えなくなった。
『http』を『https』に勝手にリダイレクトするくせに、localhostやIP指定なら接続できるという症状。
原因は、VirutalHostで『.app』『.dev』が含まれているホスト名を設定していることなので、変更するのが良い。めんどくさいけど。
参照:Google ChromeでVagrant+VirtualBox等の開発環境でhttps接続にリダイレクトされる問題

コメントを残す

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