suinの仮想Linux環境。ローカルの開発環境向け。
- Vagrant
- NFS
- vagrant-fsevents - Forward filesystem change notifications to your Vagrant VM
- Ubuntu 16.04
- Docker CE
- VMware Fusion
- Homebrewインストール済み
- VMware Fusion 11のライセンス購入済み
- vagrant-vmware-desktopのライセンス購入済み
一応virtualboxでも動くはず。
- Virtualboxより速いから
- なぜ、Docker for Macじゃない?
- 遅いから
- hanhan's blog - Docker for Macのmount遅い問題まとめ
- NFSに比べて体感10倍くらい遅い
- なぜ、dinghyじゃない?
- dinghyはNFSで共有できるディレクトリが1つしか指定できないから。
- macOSに作った/Volume/devをマウントしながら、/Users/suinをマウントするってことができない。
- /tmpに依存するdgossがちゃんと使えない。
あと、dockerまわりのツール(docker, docker-compose, dgossなど)がすべて仮想Linuxに入るので、Macの環境が汚れにくい。仮想Linuxが汚れたら作り直せばいいけど、Mac環境はなかなかそうもいかない。
下記コマンドを実行すると、HomebrewでVMware FusionとVagrantが入る。また、vagrant-vmware-desktopのライセンスのアクティベーションがされる。最後に、vagrant upが実行され、Linux仮想マシンがプロビジョニングされる。
./setup.sh
この手順は、git clone後の初回だけこれをやればいい。
最後にlinuxenvコマンドにパスが通るように.bashrcなどを調整する。
仮想Linuxの起動:
vagrant up
仮想Linuxにログイン:
linuxenv