11
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

さくらインターネットAdvent Calendar 2015

Day 5

PHP7.0リリース記念 さくらのクラウドで一撃WEBサーバー構築!

Posted at

みなさまQiitaでは初めまして。 @nullpopopo と申します。わけあってぼっちサーバーエンジニアという仕事をしております。ところで、PHP7.0が正式リリースされましたね!みんな大好きCentOSでも、remiリポジトリからyumでPHP7.0がインストールできるようにもなりました(RC版は以前からありました)。ということで、ICHIGEKI を使って一撃インストールしてみたいと思います。仕様としてはこんな感じです。

  • 対応OSはCentOS6、CentOS7
  • WEBサーバーはhttpdかnginxを選択可能
  • WEBサーバーはデフォルトでhttp https両方LISTENします(オレオレ証明書)
  • PHPのバージョンは5.3(CentOS6のみ)、5.4、5.5、5.6、7.0から選択可能
  • MySQLはサーバー、クライアントを選択可能
  • MySQLのバージョンは5.6、5.7から選択可能
  • eth0(localhost以外のインターフェイスで最初に認識されるもの)のIPアドレス、サブネットマスク等を変数に格納して変更可能

使い方は至って簡単、/rootユーザーでログインして適当なディレクトリにICHIGEKIを置いて実行するだけです。ユーザー名などは以下のように適宜編集してくださいね。

ADDUSERNAME[0]=oresama
ADDUSERPASS[0]=oresama-password
ADDGROUPNAME[0]=oresamagroup
ADDUSERUID[0]=500 #UIDは500か1000、それ以降を推奨
ADDUSERGID[0]=500 #GIDは500か1000、それ以降を推奨
ADDUSERSHELL[0]=/bin/bash
ADDUSERSUDO[0]=yes # yes/no枕でyesだったらsudo可能
ADDUSERSQLADMIN[0]=yes # yes/no略...だったらホームディレクトリに .my.cnf と .mytopが置かれる
ADDUSERPUBKEY[0]="ssh-rsa AAAA..." # 公開鍵はよしなに登録してね♡

これ、作るサーバーが1台だけだったらよいのですが、大量にサーバー建てるときは面倒なので、さくらのクラウドで実行するならスタートアップスクリプトからキックしたいものです。

が、結構な行数になったのでスタートアップスクリプトに登録できず、それならgithubから引っ張ってきてよしなに変数突っ込んでしまえということで、こんなのをスタートアップスクリプトに登録します。

curl -Ls https://raw.githubusercontent.com/nullpopopo/ichigeki/master/ICHIGEKI | \
sed -e "/^ADDUSERNAME\[0\]/s/_USER0_/nullpopopo/"                              | \
sed -e "/^ADDUSERPASS\[0\]/s/_USER0_PW_/nUlLp0P0p0P@sSw0Rd/"                   | \
sed -e "/^ADDGROUPNAME\[0\]/s/_USER0_GROUP_/nullpopopo/"                       | \
sed -e "/^ADDUSERUID\[0\]/s/_USER0_UID_/500/"                                  | \
sed -e "/^ADDUSERGID\[0\]/s/_USER0_GID_/500/"                                  | \
sed -e "/^ADDUSERSHELL\[0\]/s/_USER0_SHELL_/\/bin\/bash/"                      | \
sed -e "/^ADDUSERSUDO\[0\]/s/_USER0_SUDOFLAG_/yes/"                            | \
sed -e "/^ADDUSERSQLADMIN\[0\]/s/_USER0_SQLFLAG_/yes/"                         | \
sed -e "/^ADDUSERPUBKEY\[0\]/s/ssh-rsa AAAA.../ssh-rsa AAAA略/"                   | \
sed -e "/^ADDUSERNAME\[1\]/d"                                                  | \
sed -e "/^ADDUSERPASS\[1\]/d"                                                  | \
sed -e "/^ADDGROUPNAME\[1\]/d"                                                 | \
sed -e "/^ADDUSERUID\[1\]/d"                                                   | \
sed -e "/^ADDUSERGID\[1\]/d"                                                   | \
sed -e "/^ADDUSERSHELL\[1\]/d"                                                 | \
sed -e "/^ADDUSERSUDO\[1\]/d"                                                  | \
sed -e "/^ADDUSERSQLADMIN\[1\]/d"                                              | \
sed -e "/^ADDUSERPUBKEY\[1\]/d"                                                | \
sed -e "/^DBUSER/s/_DBUSERNAME_/dbadmin/"                                      | \
sed -e "/^DBUSERPW/s/_DBUSERPW_/Db@Dm1N/"                                      | \
sed -e "/^IPADDR/d"                                                            | \
sed -e "/^GWADDR/d"                                                            | \
sed -e "/^SUBNET/d"                                                            | \
sed -e "/^NETMASK/d"                                                           | \
sed -e "/^NWADDR/d"                                                            | \
sed -e "/^NSADDR\[0\]/d"                                                       | \
sed -e "/^NSADDR\[1\]/d"                                                       | \
sed -e "/^NSADDR\[2\]/d"                                                       | \
sed -e "/^MUNINIPADDR/s/_MUNINIPADDR_/127.0.0.1/"                              | \
sed -e "/^MUNINSUBNET/s/_MUNINSUBNET_/32/"                                     | \
sed -e "/^MUNINDBUSERPW/s/_MUNINDBUSERPW_/mUn1NdBp@sSw0Rd/"                    | \
sed -e "/^MYSQLROOTPW/s/_MYSQLROOTPW_/MyS9Lr0OtP@SsW0rD/"                      | tee /root/ICHIGEKI ; sh /root/ICHIGEKI

あとはスタートアップスクリプトを指定してサーバーを建てるだけ。ね、簡単でしょう?
PHP70.png

11
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?