Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
3
Help us understand the problem. What is going on with this article?
@mkuser9

VagrantとVirtulBoxを使用してLAMP環境を構築する方法メモ

More than 1 year has passed since last update.

VagrantとVirtulBoxを使用してLAMP環境の構築を目指す。

MACを使用。

用意するソフト

すべてフリーソフト

・VirtulBox
・Vagrant

仮想マシンの準備

LAMPのLの部分。
まず、CentOS7のboxを追加する。

console
$ vagrant box add centos/7

virtualboxを使用しているので「3」を選択

1) hyperv
2) libvirt
3) virtualbox
4) vmware_desktop

Enter your choice: 3

CentOS7用のboxが入っているかどうかを確認する。

console
$ vagrant box list
centos/7 (virtualbox, 1905.1)

*特定のboxを削除する場合は次のコマンドを使用。

console
$ vagrant box remove centos/7

仮想マシン用のフォルダを作成して、作成したフォルダに移動しておく。

console
$ mkdir CentOS/ 
$ cd CentOS/

追加したcentos/7というboxを選択する。

console
$ vagrant init centos/7
フォルダにVagrantfileができていればOK。

Vagrantfileにある下記をコメントアウトしておく。

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

仮想マシンを起動

仮想マシンを起動する

console
$ vagrant up

仮想マシンの状態を確認する。runningになっていれば稼働している。

console
$ vagrant status

Current machine states:

default                   running (virtualbox)

仮想マシンへ接続

console
$ vagrant ssh

コマンドラインが下記のようになっていればOK.
[vagrant@localhost ~]$

これでLinuxが準備できた。

仮想マシンを停止したい場合

haltコマンドで仮想マシンを停止できる。

console
$ vagrant halt

仮想マシンを削除したい場合

destroyコマンドで仮想マシンを削除できる。

console
$ vagrant destroy

rootユーザーへの切り替え

console
$ sudo su

vagrantユーザーに戻す場合

console
$ su vagrant

Apacheをインストール

LAMP環境のAの部分。

vagrant
$ sudo yum -y update
$ sudo yum -y install httpd
バージョンの確認
$ httpd -v
Server version: Apache/2.4.6 (CentOS)
インストール確認
$ rpm -qa | grep httpd

この時点でIPアドレスに接続するとApacheのテスト画面が表示されるはず。

http://192.168.33.10/
「Testing 123..」という画面が表示される。

表示されない場合は、firewalldコマンドが原因となっている場合がある。下記コマンドでfirewalldをストップさせてから、再接続してみる。

vagrant
$ sudo systemctl stop firewalld

MySQLをインストール

LAMP環境のMの部分。

vagrant
$ sudo yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
$ sudo yum install -y mysql-community-server
$ sudo yum install -y mysql-devel
$ mysqld --version

起動確認をしておく。

vagrant
起動
$ sudo systemctl start httpd.service
$ sudo systemctl start mysqld.service
自動起動
$ sudo systemctl enable httpd.service
$ sudo systemctl enable mysqld.service
状態確認
$ sudo systemctl status httpd.service
$ sudo systemctl status mysqld.service
起動確認
$ ps aux | grep httpd
$ ps aux | grep mysqld

PHPをインストール

LAMP環境のPの部分。

vagrant
$ sudo yum -y install epel-release
$ sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
$ sudo yum -y install --enablerepo=remi,remi-php71 php php-devel php-mbstring php-pdo php-gd php-xml php-mcrypt
$ php --version

Webサイトにアクセス

html配下にindex.htmlを作成する。

vagrant
$ cd /var/www/html
$ sudo vi index.html
index.html
<html>
<head></head>
<body>
        <h1>Hello World</h1>
</body>
</html>

この時点でIPアドレスに接続すると「Hello World」と表示されるはず。

http://192.168.33.10/

PHPをApacheに対応させる。

vagrant
$ sudo vi /etc/httpd/conf/httpd.conf

httpd.confに下記を追加する。

  AddType application/x-httpd-php .php          //追加
  AddType application/x-httpd-php-source .phps  //追加

下記のように追加する。

httpd.conf
# If the AddEncoding directives above are commented-out, then you
# probably should define those extensions to indicate media types:
#
  AddType application/x-compress .Z
  AddType application/x-gzip .gz .tgz
  AddType application/x-httpd-php .php          //追加
  AddType application/x-httpd-php-source .phps  //追加

phpファイルを作成する。

vagrant
$ cd /var/www/html
$ sudo vi test.php
test.php
<html>
<head></head>
<body>
<?php
        echo('Hello World');
?>
</body>
</html>

下記のIPアドレスに接続して「Hello World」と表示されればOK.

http://192.168.33.10/test.php/
3
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
3
Help us understand the problem. What is going on with this article?