こんにちは、ゆーろんです。
今回はVagrant+VirtualBoxでWebサーバをローカルで建ててみますので、手順をまとめます。
目次
説明
初めに今回の使用技術とAlmaLinuxに関して説明します。
VirtualBoxとは
ホスト型の仮想化ソフトウェア。
Vagrantとは
一言でいうと仮想マシンなどを簡単に構築/操作するためのソフトウェア。
VirtualBoxやVMwareを直接操作せずともエージェントとして操作できる。 ちなみにTerraformと同じHashiCorp製。
AlmaLinuxについて
RHELのクローン。 サーバ用Linuxの事実上の標準だったCentOSの開発終了に伴い、AlmaLinuxまたはRockyLinuxに移行するケースが多い模様。
今回の環境ではAlmaLinux9を使用します。
環境
- VirtualBox 7.0.8
- Vagrant2.3.6
- AlmaLinux 9
構築手順
Vagrant+VirtualBoxの環境構築に関しては割愛。
Vagrant+VirtualBoxの設定
任意のフォルダを作成し、下記コマンドを実行。
vagrant init almalinux/9
生成されたvagrantfileを以下のように編集(コメントアウトは省略しています)。
Vagrant.configure("2") do |config|
config.vm.box = "almalinux/9"
config.vm.hostname = "test-web-server"
config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.synced_folder "ここに保存場所の絶対パスを指定", "/var/www/html/"
config.vm.provider "virtualbox" do |vb|
# Display the VirtualBox GUI when booting the machine
vb.gui = true
# Customize the amount of memory on the VM:
vb.memory = "1024"
end
end
以下コマンドで仮想マシンの作成と実行
vagrant up
以下コマンドで接続。 なおTeraTermで接続する場合はIPアドレスは上記設定の場合、192.168.33.10で接続
Vagrantで仮想マシンを作成した場合、デフォルトでユーザ名とパスワードは共に「vagrant」となる。
vagrant ssh
AlmaLinuxの設定
今回はSELinuxの無効化を行う。 下記コマンドで確認
getenforce
永続無効化は以下の通り。
vi /etc/selinux/config
SELINUX=disabled
再起動する。
reboot
SELINUX=disabled
AlmaLinux9にはデフォルトでFireWallのインストールはされていない。
そのためFireWallのインストールを行う。 設定は以下の通り。
# インストール
sudo dnf install firewalld
# 起動設定
sudo systemctl start firewalld.service
sudo systemctl enable firewalld.service
# ポートの確認
firewall-cmd --list-all
httpdサービスの起動とポート開放の確認ができたら、ホストマシン上のブラウザでhttp://192.168.33.10にアクセス。
上記のように表示されたらおk。
おまけ
AlmaLinuxをインストールした時点でロケールとキーボード入力の設定はUSになっています。 ロケール/キーボード設定の変更方法をまとめます。
# ローケールの確認
localectl
# ロケール設定の日本語化
sudo localectl set-locale LANG=ja_JP.utf8
# 上記ができない場合下記コマンドでインストール
sudo dnf install glibc-langpack-ja
キーマップも変更してみます。