Drupal8ですが、そろそろRC1が出そうですし、aquiaのサービスが始まりました。そろそろ良いじゃないですかね?ということで本番機の練習用にさくらのクラウドにインストールしてみることにしました。
(本番機は、さくらのVPSです)
さくらのクラウドのスペックを決める
練習なんで安いものにしてみます。以下のスペックにしてみました。
利用料は、日割り119円、月額2,386円 になります。
作成を指示してOSのインストール込みで4分半くらいで完了しました。
項目 | 設定値 |
---|---|
ゾーン | 石狩第1ゾーン |
CPUコア数 | 1 |
メモリ | 1GB |
ストレージ | 標準ディスク 40GB |
OS | CentOS 7.0 64bit (基本セット) |
php 5.6 のインストール
remi リポジトリの追加と php のインストール
remi リポジトリを使ってインストールします。apacheも同時にインストールされてしまいますが、気にせず進めます。
# yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# yum -y install --enablerepo=remi,remi-php56 php php-devel php-mbstring php-mcrypt php-mysqlnd php-pecl-xdebug php-pecl-xhprof php-gd php-fpm php-twig-ctwig
# php -v
PHP 5.6.11 (cli) (built: Jul 12 2015 20:13:00)
Copyright (c) 1997-2015 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
MariaDB 10 のインストール
次に MariaDB 10 をインストールします。
まず公式のリポジトリが用意してあるので追加する作業をします。
以下のURLにアクセスして設定情報を確認します。
https://downloads.mariadb.org/mariadb/repositories/
CentOS => CentOS 7 (64bit) => 10.0 と選択します。
画面下部に公式リポジトリの情報が表示されるはずです。
指示に従ってファイルを作成します。
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.0/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
インストールします。
# yum -y install MariaDB-devel MariaDB-client MariaDB-server
設定の変更
文字コードなどを修正します。
[mysqld]
character-set-server=utf8
log-bin=mysql-bin
expire_logs_days=30
自動起動とし、MariaDB を起動します。
# service start mysql
Starting MySQL. SUCCESS!
# systemctl enable mysql.service
mysql_secure_installation を起動して、アレコレ設定しておきます。
# mysql_secure_installation
Nginxのインストール
パッケージリポジトリを追加します。
/etc/yum.repos.d/nginx.repo を作成します。
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=0
enabled=0
yum コマンドでインストールします。
# yum -y --enablerepo=nginx install nginx
# systemctl start nginx
# systemctl enable nginx
ブラウザでアクセスをして nginx の画面が表示されるかを確認します。
php-fpm の設定
設定の変更
php-fpm の設定を変更します。userとgroupの設定値をapacheからnginxに変更します。
user = nginx
group = nginx
さらに listen 、listen.owner 、listen.group を変更します。
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nginx
listen.group = nginx
続いてサービス化して起動をします。
# systemctl start php-fpm.service
# systemctl enable php-fpm.service
nginxの設定変更
nginxの設定を変更します。
8から10行目をコメントアウトし、以下のものにします。
location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
include fastcgi_params;
}
いったんnginxを再起動してます。
# systemctl restart nginx.service
テスト用スクリプトの作成と確認
いつものphpテストスクリプトを作成します。
<?php phpinfo(); ?>
ブラウザで http://(サーバのアドレス)/test.php にアクセスすると、いつものアレが表示されるかと思います。
Druapl のインストール
データベースの準備
d8 というデータベースを作成します。またdrupal8というユーザを作成します。パスワードは、qiitaa にしてアクセスできるようにします。
# mysql -u root -p
create database d8;
grant all privileges on d8.* to 'drupal8'@'localhost' identified by 'qiitaa';
exit
php.ini の編集
そのままだとソケットの位置の記載がないので、/var/lib/mysql/mysql.sock を設定します。
# grep -n "\.default_socket\s*=$" /etc/php.ini
969:pdo_mysql.default_socket=
1108:mysql.default_socket =
1167:mysqli.default_socket =
# vi /etc/php.ini
# grep -n "\.default_socket\s*=" /etc/php.ini
969:pdo_mysql.default_socket=/var/lib/mysql/mysql.sock
1108:mysql.default_socket = /var/lib/mysql/mysql.sock
1167:mysqli.default_socket = /var/lib/mysql/mysql.sock
drupal 8 のダウンロード
この投稿を書いているときの最新は、beta 13 なんでダウンロードします。
ダウンロードページ にアクセスします。
以下の画面サンプルの赤枠にあるリンク(drupal-8.0.0-beta13.tar.gz)のアドレスをコピーします。
シェルに戻りダウンロードします。
# cd /usr/share/nginx/
# curl -O http://ftp.drupal.org/files/projects/drupal-8.0.0-beta13.tar.gz
# tar zxvf drupal-8.0.0-beta13.tar.gz
# ln -s drupal-8.0.0-beta13 drupal
# chown -R nginx:nginx drupal-8.0.0-beta13 drupal
nginxの設定を再度変更します。変更後は以下のようになります。
server {
listen 80;
server_name localhost;
root /usr/share/nginx/drupal;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
location ~ \.php$ {
root /usr/share/nginx/drupal;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
include fastcgi_params;
}
}
nginx を再起動します。
# systemctl restart nginx.service
ブラウザでアクセスするとdrupalの言語選択画面が表示されればOKです。
言語が日本語になっているのを確認して、「Save and continue」をクリックします。
「標準」が選択されているのを確認して「保存して次へ」をクリックします。
以下のように入力し、「保存して次へ」をクリックします。
項目 | 設定値 |
---|---|
データベース | d8 |
データベースのユーザー名 | drupal8 |
データベースのパスワード | qiitaa |
データベースに接続が出来るとインストールが開始されます。
あとは、サイトの環境設定 を設定して終了です。問題なければ、トップ画面に遷移します。