windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その2)IPアドレスとホスト名の設定

シェアする

IPアドレスとホスト名を設定してSSH接続を確認

Windows10(Windows7でも同様ですが)のパソコンでWebアプリを動作させる環境を構築する方法を説明しています。

前回は、VagrantとVirtualBoxをインストールして、CentOSというLinuxのディストリビューションをインストールするところまで紹介しました。

そちらを見てない人は、記事「windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その1)仮想マシン作成まで」を確認ください。

これからvagrantで作成した仮想マシンにLAMP環境を構築していきますが、その前に、ネットワークの設定をします。

IPアドレスの設定

まずは、手作業・自動 の共通での作業を説明します。IPアドレスの設定です。

仮想マシンを起動する前に、設定を少し変えましょう。
ホストOSからIPアドレス・ホスト名を使ってアクセスするためのネットワークの設定です。仮想マシンをWebサーバーにするなら必須です。

手順1. Vagrantfileを編集

ホストにて Vagrantfile をエディタで開いてください。

#で始まる行はコメント行なので、自由に編集しても削除しても大丈夫です。#以外の行が、実際にvagrantの設定として意味を持ちます。

Vagrantfileを開くと、config.vm.network で始まる次の行が コメントアウト(先頭に#がついた状態)になっているので、#を削除して、有効にします。IPアドレスはデフォルト(始め)は、192.168.33.10 になっています。複数の仮想マシンを同時に使うときは変更して使いますが、今は、このIPアドレスのままで大丈夫です。

この状態で、Vagrantfile から 説明のためにコメント行を抜くと下のような構成になってます。ベースとなるBox と、IPアドレスしか指定してない、かなりシンプルな構成ですね。

手順2. 仮想マシンを起動

起動して確認しましょう。仮想マシンの管理フォルダでgit bashを起動します。

エクスプローラで管理フォルダを右クリックして、「Git Bash Here」をクリックすればbashシェルが起動します。

vagrant up<span style="background-color: #f4f4f4;"> とコマンドを入力して仮想マシンを起動しましょう。

global-status  コマンドで起動していることを確認しましょう。

manutest フォルダ の仮想マシンが running(起動中)になってます。

手順3. IPアドレスを使ったログイン確認

それでは vagrant の ssh ではなく、sshコマンドで接続してみましょう。

ssh vagrant@192.168.33.10

と入力してください。

「IPアドレス 192.168.33.10 のコンピュータの vagrant というユーザアカウントでssh接続をする」という意味です。vagrantの場合、最初仮想マシンを構築すると、一般ユーザ vagrant が作成されています。

最初の一回目のときは、サーバーの公開鍵のfingerprint(指紋)を記録していないため、本当に接続してよいか聞かれます。ここはyesで進みます。

次からはsshが既知のホストとしてこのfingerprintを記録しておくため、すぐにユーザ認証(パスワード入力)のモードになります。

もし、ホスト側のfingerprint が変更された場合、なりすましの可能性があるため、その旨が表示されます。

パスワードですが、ユーザ名 vagrant の初期パスワードが vagrant で登録されています。vagrant と入力しましょう。 

ログインできれば、ネットワークの設定は問題なしです。ログアウトしておきましょう。

logout か、 exit コマンドでログアウトできます。

ホスト名の設定

手順1. ホストOS(Windows10)で hostsファイルの編集

ドメイン名でアクセスしたい場合、windows10のhostsファイルにホスト名を記述します。

特に、複数のドメイン名で同じサーバーにアクセスして、ドメイン名ごとに別のwebページを表示させたい場合、複数のドメイン名をおなじ仮想マシンンのIPアドレスとして登録しておく必要があります。

ここでは、

  • vagrant.lhost
  • test.lhost

の2つのドメイン名をhosts に登録してみます。

hostsファイルは「C:\Windows\System32\drivers\etc」にありますが、管理者権限で開かないと編集できないため、まずは、エディタを管理者権限で起動しましょう。

例えばメモ帳の場合を下図に示します。「スタートボタンからWindowsアクセサリ→メモ帳」と進んで右クリックして、「その他→管理者として実行」をクリックします。

「C:\Windows\System32\drivers\etc\hosts」ファイルを開きます。

フィルタが*.txt になっていると表示されないため、「すべてのファイル(*.*)」を選択してから hosts ファイルを選びます。

また、文字コードに、下図の例ではUTF-8というコードを選択してますね。

日本語を入力しなければ、なんでも大丈夫ですし、このファイルに限っていえば、windowsで使うだけなのでANSIのままの方がよかったですね。

開いたら、

の2行を追加して保存します。

(余談)

私のパソコンでは、test.localhost などと、ホスト名にlocalhost のドメイン名を付けた場合、Chrome からアクセスできない問題が発生しました。

おそらく、ホストOS(Windows10)を見に行ってしまってると思われます。

原因はwindows10自身(127.0.0.1と表現)に、work.localhost というホスト名を設定してしまったためだと思うのですが、NGになる理由が分かりません。他のブラウザは Firefox, IE ともに問題なしです。同じドメインでサブドメイン違いによってIPアドレスを切り替えられないと、複数サーバーを切り替える運用ができなくなってしまうからです。

ですが、Chromeでそういう不具合があったため、localhost というドメイン名は避けてます。

手順2. ホスト名を使ってsshアクセス確認

設定が終わったら、 ssh vagrant@test.lhost とコマンド入力して、今度はtest.lhost にログインしてみます。

問題なくアクセスできました。

まとめ

今回は、仮想マシンのIPアドレスの設定と、複数のホスト名の設定を行いました。

Webサーバーとして使用するとき、アクセスされるURLのドメインによって、表示させるWebページを切り替えるという使い方ができるようになります。

ブラウザでアクセスしている人からは、一見、複数のサーバにアクセスしているように見せることができます。

CentOS7/apache2.4/PHP7.1/MySQL5.7 の各バージョンを使います。

次回はいよいよサーバーとして使用するためのLAMP構築について説明します。

ぜひ導入してみてください。

記事一覧

windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その1)仮想マシン作成まで

windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その2)IPアドレスとホスト名の設定

windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その3)LAMP環境構築の概略

windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その4)手作業でLAMP環境構築

windowsにvagrantとvirtualboxでWeb開発環境をつくろう。(その5)itamaeを使って自動でLAMP環境構築するには

この記事が気に入ったら
いいね ! しよう