PaizaCloudでCakePHP3のチュートリアルの環境を構築するシェルスクリプト

投稿者: | 2017年12月21日

はじめに

PaizaCloudでCakePHP3のチュートリアルの環境を構築するまとめ」でPaizaCloudでCakePHP3のチュートリアルの環境を構築する方法が分かりました。しかし、毎回コマンドを入力するのは面倒なので、いくつかの設定も追加して単純なシェルスクリプトを作成しました。

スクリプトファイルをgithub上で管理しているので、PaizaCloudに導入する方法に悩むことはありません。

一式:jpzukin/paizacloud_cakephp3

追記 2018.3.8

PaizaCloudのPHPが7.2に上がったので、シェルスクリプト側もphp7.2へ対応させました。

検証環境

macOS 10.12.6

Chrome 63.0.3239.108 (64bit)

環境構築手順

新規サーバーの作成

これは「PaizaCloudでCakePHP3のチュートリアルの環境を構築するまとめ」と同じ手順です。

先頭の”stupiddog-“は、各自のユーザー名になっているので、それ以降を変更します。

シェルスクリプトの取得

ターミナルを開いて以下のコマンドで取得します。

~$ git clone https://github.com/jpzukin/paizacloud_cakephp3
Cloning into 'paizacloud_cakephp3'...
remote: Counting objects: 73, done.
remote: Compressing objects: 100% (51/51), done.
remote: Total 73 (delta 32), reused 59 (delta 18), pack-reused 0
Unpacking objects: 100% (73/73), done.
Checking connectivity... done.
~$

paizacloud_cakephp3ディレクトリが作成され、その中にスクリプトファイルがあります。

~$ ls -lF
total 8
drwxr-xr-x 3 ubuntu ubuntu 4096 Dec 20 19:38 paizacloud_cakephp3/
drwxr-xr-x 2 ubuntu ubuntu 4096 Dec 20 19:37 public_html/

~$ ls -lF paizacloud_cakephp3
total 8
-rwxr-xr-x 1 ubuntu ubuntu 1861 Dec 20 19:38 init.sh*
-rw-r--r-- 1 ubuntu ubuntu  873 Dec 20 19:38 README.md

スクリプトの実行

~$ ./paizacloud_cakephp3/init.sh
...
[166.5MB/173.70s] Created `config/app.php` file
[166.5MB/173.70s] Created `/home/ubuntu/public_html/my_app_name/tmp/cache/views` directory
Set Folder Permissions ? (Default to Y) [Y,n]? Y
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/tmp/cache
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/tmp/cache/models
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/tmp/cache/persistent
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/tmp/cache/views
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/tmp/sessions
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/tmp/tests
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/tmp
[166.6MB/500.05s] Permissions set on /home/ubuntu/public_html/my_app_name/logs
[166.6MB/500.05s] Updated Security.salt value in config/app.php
[166.6MB/500.06s] Memory usage: 166.58MB (peak: 254.77MB), time: 500.06s
~$

だいたい、10分以内に終了します。(例だと500秒)

最後にComposerからCakePHPのディレクトリに対してパーミッションの変更をするか問い合わせてくるので、"Y"を入力してENTERします。(デフォルトが"Y"なのでENTERだけでも問題ありません)

結果の確認

ブラウザでCakePHPのトップページを確認する

アドレスは「https://<サーバー名>.paiza-user.cloud/~ubuntu/my_app_name/」になります。最後のスラッシュも入力します。

備考

設定ファイルなどのは用意せず変更できそうな部分はシェルの先頭にまとめてあります。

以下の4が変更可能です。

  • データベース名:db_name (default = my_app)
  • データベースのユーザー名:db_user (default = my_app)
  • データベースのパスワード:db_pass (default = Pa$$w0rd)
  • CakePHP3のアプリ名:app_name (default = my_app_name)

それぞれ値のチェックはスクリプト内で行っていません。パスワードは簡単すぎるとmysqlに拒否されます。

まとめ

ホストマシンの違いはないので、今のところ誰が行っても同じ環境を作れるはずです。

将来、この手順は要らなくなりそうなので、ラフなシェルスクリプトです。

作成されるデータベースは何もテーブルがない空のデータベースです。個々のチュートリアルにあるテーブルを作成するSQLにより中身は構築します。

新規サーバー作成でCakePHPボタンが欲しいですノωT)