プログラミング 環境構築

【VirtualBox+Vagrant】VirtualBox+Vagrantで仮想環境を構築する

投稿日:

前回、仮想環境簡単設定ツール「Vagrant」のインストールで仮想環境設定自動化ツール「Vagarant」のインストールを行いました。

Vagrantを使用すれば、VirtualBox上に作成する仮想環境の設定を簡略化でき、また作成時の設定をまとめたVagrantfileを使用すれば、

同じ仮想環境を何処でもいつでも再構築することができます。

今回Vagrantを使用してVirtualBox上に仮想環境を構築していきたいと思います!

VirtualBox+Vagrantで環境構築

環境

・Windows10

・VirtulBox6.0

VirtualBoxに関しては【WordPress】WordPressをDockerToolboxを使用して構築する方法でインストールを行っています。

・Vagrant2.2.4

Vagrantfileの作成

まずはVirtualBox上の仮想環境の設定ファイルであるVagrantfileを作成します。

任意のフォルダを作成し、PowerShellを起動し、作成したフォルダに移動後以下のコマンドを実行します。

コマンド実行すると、フォルダにVagrantファイルが作成されるので以下のように編集します。

6行目:config.vm.box

作成する環境のOSを設定できます。

Vagarant公式のboxのカタログに作成できる環境のリストがありますので、こちらから作成したい環境を指定します。

今回は「centos/7」を指定しています。

8行目:config.vm.network

仮想環境のネットワーク設定となります。

privateとすることでホストOSとのみネットワークが有効となり、publicとすると同じLAN内の別端末からssh接続が可能です。

IPを指定することも可能です。

10行目~20行目:config.vm.provider

VirtualBox内の基本設定を変更できます。

上記Vagrantfileでは名称、CPU数を指定し、GUIを有効にしています。

また「vb.customize」オプションを使用することで、VirtualBoxマネージャで設定できる内容をVagrantfileで設定することができます。

上記Vagrantfileでは双方向のクリップボード、ドラッグ&ドロップを有効にしています。

その他様々な設定項目がありますので、必要に応じて設定を行ってください。詳細についてはこちらで確認ができます。

22~30行目:config.vm.provision

vm起動後に設定する項目となります。

上記Vagrantfileではdocker、CentOS7のデスクトップ環境であるGNOME Desktopのインストール、firefoxのインストール、言語設定やデフォルトのGUI設定などを行っています。

Vagrantfileを実行しVirtualBox上に仮想マシンを作成する

Vagrantfileが作成できたら、PowerShell上で以下のコマンドを実行します。

コマンド実行後、以下の画面が立ち上がりますが、インストールが終了すると再起動がかかりますのでしばらく放置します。

再起動後、設定画面が立ち上がります。

「設定の完了」を押下すると、ログイン画面に遷移しますので、パスワード「vagrant」を入力しログインを行います。

ログイン後、以下のセットアップ画面が立ち上がりますので、こちらも任意の設定を行い、完了させます。

一応Dockerがインストールされているかも確認します。

terninalを開き、Dockerのバージョン確認コマンドを押下します。

バージョンが表示されたら環境構築はひとまず完成です。

インストール後の設定

セットアップが完了後、VM上での作業効率向上のためにホストOSとゲストOSのマウス統合と、クリップボードが活用できるようにします。

セットアップ終了後、teninalを開き以下のコマンドを実行し必要なパッケージのインストールを行います。

実行後、一度シャットダウンし、VirtualBoxマネージャの設定から光学ディスクの追加の行います。

追加時に「空のままにする」を選択し、OKを押下して仮想マシンを再度起動します。

ログインしたら、上部ツールバーの「デバイス」の「Guest AdditionsCDイメージの挿入」を押下します。

ポップアップダイヤログが表示されますので、「実行する」を押下します。

押下後、認証情報の要求がありますので、ログイン時のパスワードを入力し、「認証」を押下します。

セットアップが開始しますので、しばらく待って「Press Return to close this window…」と表示されたら、Enterを押下しセットアップ画面を閉じます。

その後、再起動を行うとマウスの統合とクリップボードが使用できるようになります!

詰まったところ

当初、Vagrantfileにboxの指定に「config.vm.box = “bento/centos-7.3″」と記述していたんですが、

その場合だとGuestAdditionsのセットアップがうまくいかず詰まりました…

その後、「config.vm.box = “centos/7″」に書き換えると問題なくセットアップが完了しました。

時間があったら詳しく調べてみたいと思います。

参考

VagrantとDockerについて名前しか知らなかったので試した

VagrantfileでVirtualBoxのVMパフォーマンス向上設定

Vagrant公式

VirtualBox (Windows) 上に CentOS 7 をインストールする

-プログラミング, 環境構築

関連記事

【Laravel-admin】good/csvを利用したCSVファイルのインポート

こんばんは。 一月に入り一気に寒くなってきましたね。 僕の住んでいる場所は山間にあるため、朝方は超冷えます。そして霧が深いので道路&フロントがガチガチに凍ります。 いいところもいっぱいあるので …

【Laravel-admin】Laravel-adminでのRoles(役割)とpermission(権限)について

前回「【laravel-admin】Laravel-adminで新規テーブルを作成しCRUD画面を追加する方法」でテーブルを作成し画面を追加しました。 今回は作成したテーブルの操作画面をメニューを追加 …

【Laravel】factoryを使用してテストデータを作成

factoryとは WEBアプリケーションのテストを行う際にテスト用のデータが必要になりますが、 テストデータ挿入用のSQLファイルを作成するのも時間がかかりますし、大量のデータで試験を行う場合はかな …

【VirtualBox】スナップショットの作成・適用・削除

業務では主にHyper-Vを使用しているのですが、「チェックポイント」という機能がとても便利で重宝しています。 機能の概要は、稼働している仮想環境を「チェックポイント」として保存することができ、作成し …

【SendGrid】SendGridでトランザクションテンプレート作成

はじめに 前回SendGridに登録を行いAPIKeyの作成を行いました。 関連記事:【SendGrid】SendGridについての概要 この記事ではSenGridのトランザクションメールのテンプレー …