【この記事を読むのに必要な時間は約 7 分です。】
ドットインストールのVagrant入門をWindows7/10で行おうとするとつまずく。…と思う。
つまずかないように予め同じような環境で勉強できる環境を整えよう。
つまずきポイントについても説明する。
Windows10ユーザーが環境を整えるには
考え方としては、Windows10でコマンドプロンプトまたはWindows PowerShellでコマンドがしっかり打てるようにすることが第一だと思う。
後、勉強中につまずきポイントがあったので、そこも説明する。
補足 私はWindows PowerShellを使っているので以下はこちらで説明する。
Windows PowerShellを使う
「スタートボタン」(タスクバーの一番左のWindowsのボタン)をクリックして「設定」(歯車)をクリック。
更に「個人用設定」の「タスクバー」をクリック。
そこにあるコマンドプロンプトとWindows PowerShellの置き換えボタンをオンにする。
これで今までコマンドプロンプトを起動するときに行っていた作業がWindows PowerShellの起動作業に置き換わる。
以下のサイトがわかりやすい。
どこにディレクトリを作成すれば良いか
全く同じ環境にしようとすると「C」ドライブの「Users/ユーザーの名前」ディレクトリを使用することになる。
最近はCドライブは高速なSSDやeMMCを使用しOSのみインストールして、アプリケーションやデータ等はその他のドライブで利用している人も多いと思う。
そこで、ここでは「E」ドライブを原則インストール場所として説明したい。
私は、Eドライブ以下に
E > Users > jumpup を作りその中にディレクトリを作成するようにしている。
Windows PowerShellでコマンド作業が出来るようにする
次に、Vagrant入門と同じようにターミナル(Windows PowerShell)で、全ての作業が行えるようにする。
1)Vagrantの操作をするために、Linuxコマンドを使えるようにする。
2)仮想マシーンと接続するためにsshコマンドを使えるようにする。
3)「Vi」エディタを使えるようにする。
Cygwinをインストールする
基本的に、WindowsでLinuxコマンドを打てるようにするものであればなんでも良い。
今回は「Cygwin」を利用する。
WindowsPowerShell内で利用するので、必要最小限(デフォルト)でインストールする。
補足1 Windows 10 Anniversary Updateがインストールされていると.bashが使えるようになるが、色々と設定が必要なので、この方法は取らない。
補足2 Linuxコマンドが打てるようになるものとして「Cygwin」以外にも「GoW」や「MinGW」などがあるが、今回は、「Cygwin」で行う。
インストール
Cygwinのサイトからインストーラーをダウンロードして、インストーラーを起動してインストールする。
デフォルトでインストールすれば良いが、インストール場所は、「C:¥」ではなく、「E:¥」にする。
注意 インストールするディレクトリが「E:¥Program files」のようにProgramとfilesの間にスペースがあると注意されるので、「E:¥」直下にインストールしない場合は、「E:¥PF¥」などのようにすると良い。
インストール方法はこちらのサイトを参考にして欲しい。
注意 32bit版と64bit版の選択を間違わないように。
Pathの設定
Windowsでは、Pathを設定してやるとコマンドを実行するときに、ちゃんとCygwinを見つけてくれる。
Pathの設定方法は、簡単に言うと実行ファイルの入っているディレクトリを予め指定してWindowsに覚えさせるということ。
今回インストールしたCygwinでいうと、E:¥cygwin64¥binになる。
これでWindows PowerShellでLinuxコマンドが打てるようになった。
OpenSSHをインストールする
「ssh」も色々あるが、今回は、「OpenSSH」を利用する。
補足1 他の「ssh」だとドットインストールのVagrant入門と同じにならないことがあるので、注意。
補足2 既に「Cygwin」、「Gow」、「MinGW」等を自分でインストールしていて他の「ssh」が入っている場合は一旦、全て削除して綺麗にしてから作業すると良い。
「GoW」を以前インストールした際に「Plink」が残っていて、最初「Plink」が何かわからなくて、ぐぐると「PuTTY」と出てくるので、「PuTTY」をアンインストールしたりしたが消えず、「GoW」をアンインストールしてやると消えた。
インストール
Windows版OpneSSHのサイトからzip形式のファイルをダウンロードする。
解凍後、フォルダを所定の場所へ移動してやれば良い。
注意 32bit版と64bit版の選択を間違わないように。
Pathの設定
後は、上述の「Cygwin」の時と同じようにPathを設定してやると良い。
これで「Vagrant ssh」が実行出来る。
vimをインストールする
最後にvimをインストールする。これで「vi」や「vim」が利用できるようになる。
インストール
「Windows版vimのサイト」からzip形式のファイルをダウンロードする。
解凍後、フォルダを所定の場所へ移動してやれば良い。
Pathの設定
後は、上述の「Cygwin」の時と同じようにPathを設定してやると良い。
これで「vi」が実行出来る。
vi起動時に「E437: terminal capability “cm” required」というエラーが表示される時の対処
Windows PowerShellで仮想マシーン接続時にviを起動すると上記エラーが出ることがある。
この場合、仮想マシーンの/home/vagrantにある.bashrcファイルにexport TERM=vt100を追記する。
Cyberduckを起動してアクセスし、エディタで以下のように追記する。
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
# 以下を追加
export TERM=vt100
なお、Cyberduckについては、以下を参考にすると良い。
これで大丈夫だと思う。
その他注意事項
BuiltinServerが起動しない
ドットインストールのVagrant入門をやっている方は、事前にローカル開発環境の構築 [Windows編]もやっていると思う。
buiitinServerを立ち上げるコマンドphp -S 192.168.33.10:8000を実行して、could not open input fileと表示されて困っているというのをたまに見かける。ドットインストールの学習はコマンドをコピペできるようになっているのに、ここだけ、見ながら打ち込むのだが、「S」(大文字)を「s」(小文字)でタイピングしたのが原因だと思う。
viでテキストが打ち込めない
viはテキストモードとコマンドモードがあり、初期起動時はコマンドモードになっているのでテキストモードに切り替えないと当然何も出来ない。
FTPクライアントでアクセス出来ない
仮想マシーンにアクセスする際にVagrant sshではなく、FTPクライアントでアクセスしようとすることがあると思う。
その際、もし、vagrantfileの設定を変更していた場合は、一度、vagrant reloadを実行しよう。
例えば192.168.33.10を別のIPに変更していた場合、vagrant reload を実行していないと反映されていないのでいくら頑張ってもアクセスできないので注意が必要。
最後に
これでドットインストールのVagrant入門は、快適に学習できるはずである。また、同様にローカル開発環境の構築 [Windows編]も完璧に学習できるはずなので、プログラミングの学習がスムーズに進められるようになると思う。