Edited at

さくらのVPSにLAMP環境構築する

More than 3 years have passed since last update.


現状

個人で色々と遊ぶためにさくらのレンタルサーバーからさくらのVPSへ乗り換えたので

自分のサーバーに対してやったことのメモもかねて記録していく。

この時点でVPS初回起動済みでCentOS6.6が入っただけの状態から

ログイン用ユーザー作ってsshポート変更までやった。


構築するLAMP環境

最終的な目標は標準的なLAMP環境

紳士jenkinsさんと遊び用hubotを入れて遊びたい。

気分でGitBucketかGitLabも入れる。

この記事では以下のLAMP環境を構築する

これらはyumを使用して全部入れる。

まっさらな状態なので基本的に何も入っていない状態からの作業。


  • CentOS 6.6(VPSのデフォOSイメージ)

  • Apache 2.2

  • MySQL 5.6

  • php 5.6

ぐぐれば散々出るんだけど、とにかくQiitaに何か書いてみたいだけなんです


さくらのVPSを借りたらまずやること。

セキュリティ的にまずは以下の3点はやっておこう

やり方はさくらのナレッジに書いてある。

さらに80番とssh用ポート以外拒否しておくと気が楽。


  1. rootでの直接ログイン不可

  2. sshのポート番号変更

  3. 鍵認証


Apache 2.2をインストール

CentOS6.6のyumは標準でApache2.2なのでそのまま入れる。

# yum install httpd

=============================================================================================
Package Arch Version Repository Size
=============================================================================================
Installing:
httpd x86_64 2.2.15-39.el6.centos base 825 k
Installing for dependencies:
apr-util-ldap x86_64 1.3.9-3.el6_0.1 base 15 k
httpd-tools x86_64 2.2.15-39.el6.centos base 75 k

Transaction Summary
=============================================================================================
Install 3 Package(s)

Total download size: 915 k
Installed size: 3.1 M
Is this ok [y/N]:y

Installed:
httpd.x86_64 0:2.2.15-39.el6.centos

Dependency Installed:
apr-util-ldap.x86_64 0:1.3.9-3.el6_0.1 httpd-tools.x86_64 0:2.2.15-39.el6.centos

Complete!

Apacheインストール完了。

バージョンを確認する。

# httpd -v

Server version: Apache/2.2.15 (Unix)
Server built: Oct 16 2014 14:48:21


MySQL 5.6をインストール


リポジトリを追加する

CentOS6.6の標準はMySQL5.1なので、MySQL5.6が入ってるMySQL公式のリポジトリを追加する。

# rpm -ivh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm

Retrieving http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
Preparing... ########################################### [100%]
1:mysql-community-release########################################### [100%]

リポジトリ追加完了


インストールする

# yum install mysql-community-server

=============================================================================================
Package Arch Version Repository Size
=============================================================================================
Installing:
mysql-community-libs x86_64 5.6.25-2.el6 mysql56-community 1.9 M
replacing mysql-libs.x86_64 5.1.73-5.el6_6
mysql-community-libs-compat x86_64 5.6.25-2.el6 mysql56-community 1.6 M
replacing mysql-libs.x86_64 5.1.73-5.el6_6
mysql-community-server x86_64 5.6.25-2.el6 mysql56-community 53 M
Installing for dependencies:
mysql-community-client x86_64 5.6.25-2.el6 mysql56-community 18 M
mysql-community-common x86_64 5.6.25-2.el6 mysql56-community 307 k
perl-DBI x86_64 1.609-4.el6 base 705 k

Transaction Summary
=============================================================================================
Install 6 Package(s)

Total download size: 75 M
Is this ok [y/N]:y

Installed:
mysql-community-libs.x86_64 0:5.6.25-2.el6
mysql-community-libs-compat.x86_64 0:5.6.25-2.el6
mysql-community-server.x86_64 0:5.6.25-2.el6

Dependency Installed:
mysql-community-client.x86_64 0:5.6.25-2.el6 mysql-community-common.x86_64 0:5.6.25-2.el6
perl-DBI.x86_64 0:1.609-4.el6

Replaced:
mysql-libs.x86_64 0:5.1.73-5.el6_6

Complete!

インストール完了。

途中、鍵信じる?とか聞いてくるけどyes。

バージョン確認

# mysql --version

mysql Ver 14.14 Distrib 5.6.25, for Linux (x86_64) using EditLine wrapper


php5.6をインストール

CentOS6.6の標準だとphp5.3になってしまう。

これじゃモダンなフレームワークは動かないのでremiからphp5.6を入れる。

レミって呼んでるからいつも料理の人を思い出してしまう


リポジトリを追加する


epelリポジトリを追加

# rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Retrieving http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
warning: /var/tmp/rpm-tmp.Bi0LOk: Header V3 RSA/SHA256 Signature, key ID 0608b895: NOKEY
Preparing... ########################################### [100%]
package epel-release-6-8.noarch is already installed


remiリポジトリを追加

# rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

Retrieving http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
warning: /var/tmp/rpm-tmp.L033mF: Header V3 DSA/SHA1 Signature, key ID 00f97f56: NOKEY
Preparing... ########################################### [100%]
1:remi-release ########################################### [100%]


phpインストール前に必要なパッケージをインストール

# yum --enablerepo=remi install mcrypt libyaml gd-last

=============================================================================================
Package Arch Version Repository Size
=============================================================================================
Installing:
gd-last x86_64 2.1.1-2.el6.remi remi 135 k
libyaml x86_64 0.1.3-4.el6_6 updates 52 k
mcrypt x86_64 2.6.8-10.el6 epel 83 k
Installing for dependencies:
libXpm x86_64 3.5.10-2.el6 base 51 k
libmcrypt x86_64 2.5.8-9.el6 epel 96 k
libvpx x86_64 1.3.0-5.el6_5 base 486 k
mhash x86_64 0.9.9.9-3.el6 epel 102 k

Transaction Summary
=============================================================================================
Install 7 Package(s)

Total download size: 1.0 M
Installed size: 2.6 M
Is this ok [y/N]:y

Installed:
gd-last.x86_64 0:2.1.1-2.el6.remi libyaml.x86_64 0:0.1.3-4.el6_6
mcrypt.x86_64 0:2.6.8-10.el6

Dependency Installed:
libXpm.x86_64 0:3.5.10-2.el6 libmcrypt.x86_64 0:2.5.8-9.el6 libvpx.x86_64 0:1.3.0-5.el6_5
mhash.x86_64 0:0.9.9.9-3.el6

Complete!

こちらも鍵信じる?とか聞いてくるけどyes。

さらにlibt1とlibltdlが無いといってきたのでこちらもインストール

# yum --enablerepo=remi install t1lib libtool-ltdl


php5.6ともろもろをインストール。

そのままだとphp5.3が邪魔してくるのでbaseはdisablerepoで一時的に無効にする

もろもろは自分の作りたい環境に合わせて選択、足りなかったら後で入れることにする。

# yum --enablerepo=remi-php56 --disablerepo=base install php php-devel php-common php-cli php-gd php-pdo php-mbstring php-mcrypt php-mysqlnd php-opcache php-yaml

=============================================================================================
Package Arch Version Repository Size
=============================================================================================
Installing:
php x86_64 5.6.10-1.el6.remi remi-php56 2.7 M
php-cli x86_64 5.6.10-1.el6.remi remi-php56 3.9 M
php-common x86_64 5.6.10-1.el6.remi remi-php56 1.0 M
php-devel x86_64 5.6.10-1.el6.remi remi-php56 1.2 M
php-gd x86_64 5.6.10-1.el6.remi remi-php56 74 k
php-mbstring x86_64 5.6.10-1.el6.remi remi-php56 964 k
php-mcrypt x86_64 5.6.10-1.el6.remi remi-php56 45 k
php-mysqlnd x86_64 5.6.10-1.el6.remi remi-php56 272 k
php-opcache x86_64 5.6.10-1.el6.remi remi-php56 121 k
php-pdo x86_64 5.6.10-1.el6.remi remi-php56 115 k
php-pecl-yaml x86_64 1.2.0-1.el6.remi.5.6 remi-php56 36 k
Installing for dependencies:
php-pecl-jsonc x86_64 1.3.7-1.el6.remi.5.6 remi-php56 48 k
php-pecl-jsonc-devel x86_64 1.3.7-1.el6.remi.5.6 remi-php56 25 k
php-pecl-zip x86_64 1.12.5-1.el6.remi.5.6 remi-php56 82 k

Transaction Summary
=============================================================================================
Install 14 Package(s)

Total download size: 11 M
Installed size: 42 M
Is this ok [y/N]:

Installed:
php.x86_64 0:5.6.10-1.el6.remi php-cli.x86_64 0:5.6.10-1.el6.remi
php-common.x86_64 0:5.6.10-1.el6.remi php-devel.x86_64 0:5.6.10-1.el6.remi
php-gd.x86_64 0:5.6.10-1.el6.remi php-mbstring.x86_64 0:5.6.10-1.el6.remi
php-mcrypt.x86_64 0:5.6.10-1.el6.remi php-mysqlnd.x86_64 0:5.6.10-1.el6.remi
php-opcache.x86_64 0:5.6.10-1.el6.remi php-pdo.x86_64 0:5.6.10-1.el6.remi
php-pecl-yaml.x86_64 0:1.2.0-1.el6.remi.5.6

Dependency Installed:
php-pecl-jsonc.x86_64 0:1.3.7-1.el6.remi.5.6
php-pecl-jsonc-devel.x86_64 0:1.3.7-1.el6.remi.5.6
php-pecl-zip.x86_64 0:1.12.5-1.el6.remi.5.6

Complete!

インストール完了。

バージョンを確認する

# php -v

PHP 5.6.10 (cli) (built: Jun 11 2015 08:33:51)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2015, by Zend Technologies


それぞれ起動・確認する

Apache起動

# apachectl start

httpでアクセスして「Apache2 test page」表示されれば完了

MySQL起動・確認

# /etc/init.d/mysqld start

# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.25 MySQL Community Server (GPL)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

無事ログイン成功


phpinfoを設置して確認する

Apacheは動いててもphpが動くか分からないのでphpinfoを設置して確認する。

# vi /var/www/html/info.php


info.php

<?php phpinfo();


上記内容で保存

/info.phpにアクセスして確認。

phpinfoが表示されれば構築完了。


サービスに登録して自動起動するようにする

# chkconfig httpd on

# chkconfig mysqld on

これで再起動などしたあと勝手にhttpdとMySQLが起動する


次回は

次回はphpMyAdminをインストールする。

書いた

さくらのVPSにphpMyAdminをインストールする