Cloud9でCakePHPの環境構築をする
🗓️ 2016-05-31
📑
Post
人のPCで開発環境を作ろうとすると非常に多種多様な状況なので、苦労します。 Cloud9を使ったら簡単に実行環境を作れたので備忘録として残します。最近はRails TutorialもCloud9ベースになったようですね。
Cloud9は現状、無料ユーザだとpublicプロジェクトは無制限、privateプロジェクトは1つ作れるようです。
新規プロジェクトをPHPで作成。既存のgitプロジェクト等あればクローンできます。
Create Workspaceを押すとIDEが開きます。Eclipse Likeな感じです。
ケーキのチュートリアルを試す感じだったので、composerから取得します。PHP環境だとデフォルトで入ってるみたいです。 IDE画面下部のbashウィンドウからコマンド実行ができます。
$ composer create-project --prefer-dist cakephp/app blog-tutorial
You are running composer with xdebug enabled. This has a major impact on runtime performance. See https://getcomposer.org/xdebug
Installing cakephp/app (3.2.6)
- Installing cakephp/app (3.2.6)
Downloading: 100%
...
(略)
Set Folder Permissions ? (Default to Y) [Y,n]? Y
...
(略)
Run Projectをするとapacheの起動をするのですが、その前にドキュメントルートを設定します。
$ sudo vim /etc/apache2/sites-available/001-cloud9.conf
<VirtualHost *:8080>
DocumentRoot /home/ubuntu/workspace/blog-tutorial/webroot
ServerName https://${C9_HOSTNAME}:443
LogLevel info
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /home/ubuntu/workspace/blog-tutorial/webroot>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
ついでにphpmyadminをいれます。
$ phpmyadmin-ctl install
コマンドでいくぞという場合は下記です。
$ mysql-ctl cli
で、DBなのですがユーザ名のみのパスなし状態です。ユーザIDとプロジェクト名さえわかればURLは特定できるのでパスワードを設定しましょう。
mysql> select current_user();
+----------------+
| current_user() |
+----------------+
| sugumura@% |
+----------------+
1 row in set (0.00 sec)
mysql> SET PASSWORD FOR 'sugumura'@'%'=PASSWORD('難しめのパスワード');
あとはコマンドなりphpmyadminからデータベースを作ってごりごりコードを書いてRun Projectをしましょう。 環境構築が手軽にできるってすばらしい。
ちなみにマシン(コンテナ?)はubuntu 14.04みたい。
$ cat /etc/debian_version
jessie/sid
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.3 LTS"
$ arch
x86_64
$ uname -a
Linux sugumura-sugumura-cakephp-blogtutorial-3269648 4.2.0-c9 #1 SMP Wed Sep 30 16:14:37 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux