【設定方法】VagrantとVirtualBoxでCentOS8の仮想環境をサクッと構築する手順

VirtualBoxVagrantUnixCentOS環境構築
【設定方法】VagrantとVirtualBoxでCentOS8の仮想環境をサクッと構築する手順
Memo

VagrantとVirtualBoxでCentOS8の仮想環境をサクッと構築する手順をメモしました。

CentOS 8

CentOS 8とは?

Red Hat Enterprise Linux 8 (RHEL8) から商用パッケージ等を除去した無償版のOSです。

2019年5月7日にリリースされた RHEL8 をベースに 2019年9月24日に CentOS 8.0 がリリースされました。

CentOS 8と CentOS7の大きな違い

  • パッケージ管理システムがyum から dnf への変更
  • Pythonのバージョンが 2 から 3 に変更(4つのバージョンのPythonが存在) - Dockerの代わりにRed Hat が CentOS 7.6 以降で Docker の後継として開発した Podmanが利用可能

VagrantとVirtualBox

VagrantとVirtualBoxについて

VagrantとVirtualboxの構成

環境を構築するにあたり先にVagrantとVirtualBoxのインストールが必要になります。
インストール手順については下記の記事を参照ください。

Vagrantのインストール手順

VirtualBoxのインストール手順

Vagrantコマンドの使い方とオプションの紹介

環境

  • Mac OS Big SUR 11.3.1
  • Vagrant 2.2.16
  • VirtualBox 6.1.22 r144080

ファイル操作で利用するUnixコマンド

基本的なディレクトリ作成やファイル操作はUnixコマンドを利用します。
Unixコマンドについて詳しくはこちらの記事を参考にしてください。

Vagrant で Centos8 環境構築

ディレクトリを作成

ユーザー直下 /home/user/ のディレクトリ、もしくは任意のプロジェクトのルートディレクトリ内に移動します。

terminal
$ cd ~/ or $ cd ~/project/

そこでmkdirコマンドを叩きcentos8ディレクトリを作成して移動します。
centos8は任意のディレクトリ名へ変更いただいて構いません。

terminal
$ mkdir centos8 && cd centos8

vagrant 初期化

vagrant initコマンドを実行してVMを初期化します。

terminal
$ vagrant init

boxの設定を を centos/8 へ変更

Vagrantfile の 15 行目あたりにある box の設定 config.vm.boxbaseからcentos/8へ変更します。

Vagrantfile
config.vm.box = "centos/8"

VM を起動する IP の設定を追加

Vagrantfile の 35 行目あたりにある network 設定 config.vm.network のコメントアウトを解除します。
また必要に応じて192.168.33.10となっているIP を変更してください。

Vagrantfile
config.vm.network "private_network", ip: "192.168.33.10"

VM を起動

vagrant upで vm を起動します。

terminal
$ vagrant up

起動するにあたりいろいろとエラーが出たのでその対応を実施しています。
詳細については下記記事をご確認ください。

NS_ERROR_FAILUREの対処

modprobe vboxguest failedエラーの対処

起動が完了したら構築は完了です。

CentOSのバージョンを確認する

VMへログインし構築したCentOS8の確認を実施します。

構築したCentOS8のVMへログイン

vagrant sshコマンドでVMへログインします。

terminal|ホストOS
$ vagrant ssh

## redhat-releaseファイルを確認しCentOSのバージョンを確認 catコマンドで/etc/redhat-releaseファイルを確認しCentOSのバージョンを確認します。

terminal|ゲストOS
$ cat /etc/redhat-release CentOS Linux release 8.3.2011

CentOS 8.3.2011がインストールされていることを確認できました。

CentOS8のパッケージ、モジュールのアップデート

各設定を行う前に一度CentOS8のパッケージ、モジュールのアップデートを実施します。
CentOS8のアップデートについてはyumではなくDNFを利用します。

DNF(ダンディファイド ヤム)

DNFとは

DNFはDandified Yumの略でRPMベースのパッケージ管理システムを採用しているパッケージマネージャになります。
CentOS7まで利用されていたお馴染みのyumの後継版になります。

DNFが作られるきっかけ

yum は python2 系でしか動作しないためいつまでも使い続けられないという問題があったようです。
そのためpython3系で動くDNFが作られました。

CentOS8のパッケージマネージャー

CentOS8 はシステムが利用する python のバージョンも python3 系に上がっています。
そのためデフォルトで利用するパッケージ管理システムはDNFになります。

yumコマンドの廃止

以前のCentOSバージョンで利用されていたyumコマンドについては廃止されるようです。

DNFとyumの変更点

主要なコマンドについてはyum xxxの代わりにdnf xxxに変更になるだけのため 基本的にxxxの部分は変わりません。

yumの場合

termina
$ yum install package

dnfの場合

termina
$ dnf install package

詳しくはDNF Command Referenceをご確認ください。

dnfコマンドでアップデート

terminal|ゲストOS
$ sudo dnf update -y // 中略 Complete!

初回のアップデートは少々時間がかかると思います。
以上でCentOS8のパッケージ、モジュールのアップデートは完了です。

終わりに

最後までご覧いただきありがとうございます。
この記事では【設定方法】VagrantとVirtualBoxでCentOS8の仮想環境をサクッと構築する手順について紹介させていただきました。

これからも皆様の開発に役立つ情報を提供していきたいと考えています。
今後ともよろしくお願いいたします。