はじめに
エンジニア研修中に私用PCでAmazon Linuxを触りたいと思い、何かないかと調査すると仮想環境構築ツールのVagrantがヒットしました。
名前だけは知っていたので、この機会に使ってみました。
ちょっと古めのツールですが、便利だったので紹介します。
インストール
OSに合ったVirtualBoxとVagrantをインストール https://www.virtualbox.org/wiki/Downloads https://www.vagrantup.com/downloads.html
この2つをインストールしたら、Vagrantを使って簡単にVirtualBox上に仮想マシンが構築できます。
Amazon Linuxの仮想マシン構築
まずコマンドから
vagrant init mvbcoding/awslinux
vagrant up
これだけ。
vagrant init: 仮想マシンの設定ファイルとなるVagrantfileを生成vagrant up: Vagrantfileを元に仮想マシンを構築、起動(構築後は起動のコマンド)mvbcoding/awslinux: Boxファイル(OSのイメージファイルのこと)の指定- ローカルのBoxリストに指定したBoxファイルが無い場合、起動時にVagrantCloudから指定したBoxファイルを持ってくる
VagrantCloudに有志がAmazon Linuxを配布してくれていたようなので、今回はそれを使いました。
Vagrantの主なコマンド
Boxファイルの追加
vagrant box add <name, url, or path>
Boxファイルの一覧取得
vagrant box list
Boxファイルの削除
vagrant box remove <name>
仮想マシンの起動状態確認
vagrant status
仮想マシンにSSHログイン
vagrant ssh
仮想マシンを停止
vagrant halt
仮想マシンを再起動
vagrant reload
仮想マシンを削除
vagrant destroy
便利な設定
Vagrantfileを書き換えることで、様々な設定を変更できます。
設定を適用するには仮想マシンを再起動させる必要があります。
プライベートIPアドレス設定
Vagrantfileの35行目のコメントアウトを外す
config.vm.network :private_network, ip: "192.168.33.10"
これでApacheなどを起動して、ブラウザで http://192.168.33.10 にアクセスするとコンテンツが見れるようになります。
ホストPC側とディレクトリを同期
Vagrantfileの46行目のコメントアウトを外す
config.vm.synced_folder "../data", "/vagrant_data"
../dataはホストPC側のディレクトリ、/vagrant_dataは仮想マシン側のディレクトリなので、同期させたいディレクトリに書き換えましょう。
これでホストPC側の好きなエディタで編集できます。
まとめ
どこでも同じ環境を再現できるようにするという、本来のVagrantの使い方とは外れてしまいましたが、手軽にCUIの仮想マシンが立てられ遊べるので便利です。
Dockerにも公式にAmazon Linuxがあるようですね。
海津 純平