Vagrant2.0.3を使ったCentOS7.4の環境構築

Vagrantを使ったCentOS7の環境構築で、毎回やっている作業をまとめてみます。

環境まとめ

環境 概要
1 ホストOS
(クライアントOS)
Windows 10
2 ゲストIP 192.168.33.10
3 Vagrant 2.0.3
※2018年3月31日時点の最新
4 Oracle VM VirtualBox 5.2.8
※2018年3月31日時点の最新
5 CentOS 7.4
利用しているboxはhttps://app.vagrantup.com/centos/boxes/7
6 SSHクライアント TeraTerm

VagrantによるCentOS7の環境セットアップ

centos/7 のboxイメージを利用する

管理者権限でコマンドプロンプトを起動し、カレントディレクトリを任意のディレクトリに移動してから、以下のコマンドを実行します。
※ここからしばらくはWindows環境(ホストOS上)のコマンドプロンプトやテキストエディタを利用した手順です。

vagrant init centos/7

Vagrantfileの修正

vagrant initしたフォルダに「Vagrantfile」というファイルが生成されるので、以下のように修正します。
メモリのサイズを2GBに変更していますが、デフォルトだとおよそ500MBが割り当てられ、非常に小さいため、最初から設定するようにしています。

Vagrant.configure("2") do |config|
  config.vm.box = "centos/7"
  config.vm.network "private_network", ip: "192.168.33.10"
  config.vm.provider "virtualbox" do |vb|
    vb.customize ["modifyvm", :id, "--memory", "2048"]
  end
end

vagrant upでCentOS7を起動

最初の起動には少し時間が掛かります。

vagrant up

CentOSにvimを入れる

CentOS上でテキスト編集する際に vim を使いたいのでvimをインストールしておきます。

sudo yum -y install vim

CentOSのtimezoneをAsia/Tokyoに変更

TeraTermでCentOS7に接続した状態で、dateコマンドを発行すると、ローカルPCのシステム日時と異なる時間が返却されていることが分かる。
タイムゾーンがデフォルトだとUTCに設定されているため、これをAsia/Tokyoに変更する。

sudo timedatectl set-timezone Asia/Tokyo

localeを日本に変更

localectl statusコマンドを実行すると、LANG=en_US.UTF-8と出力され、日本になっていない。
これを日本に変更する。

sudo localectl set-locale LANG=ja_JP.utf8
source /etc/locale.conf

yum管理の各種ソフトウェアをアップデート

sudo yum -y update

秘密鍵によるSSH接続の設定変更(パスワードのみでログインできるように)

上記手順のままCentOS7の環境構築を進めると、以下ディレクトリ内にある「private_key}というファイルをTeraTermで接続時に指定する必要が出てきます。
C:\vagrant-work\centos7.vagrant\machines\default\virtualbox\private_key

面倒な場合は下記設定ファイルを修正することで、パスワードのみでSSH接続できるようになります。

sudo vim /etc/ssh/sshd_config
PasswordAuthentication yes  # ←修正箇所

開発環境として利用する場合、ファイアウォールを無効にしておきたいことがよくあるのでファイアウォールの無効

必要なければこの手順を省いて問題なし

sudo systemctl stop firewalld
sudo systemctl disable firewalld

以上でCentOS7の環境構築初期セットアップが完了です。
ここまで整ったら、あとはCentOS7上でやりたかったことをやっていく感じかと。

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.