AWSのCloud9でPHP5.6/Laravel5.4の環境を作ってみた時のお話

Cloud9を使ってみたい

気軽にアプリを作ったりなんだりしたいときに、
なんとなく自分の環境にはあんまりを手を加えたくない上、
他の人にも見せたいなと思った時に便利そうなので調べてみました。

今回の環境とかは下記の通り。

  • t2.micro (1 GiB RAM + 1 vCPU)
  • Amazon Linux
  • PHP 5.6.40
  • Laravel Framework 5.4.36

AWSのアカウントを作ったりするところは割愛しますが、

こんな

感じで

ぽちぽちとお好きなものを指定していくと

もうできます!!!


Laravelをインストールしてみる

Composer

今回Composerを使うので、まずは使える状態にしましょう。
下記を参照してください。

Laravel5.4

Composerを入れたら次にLaravelのインストールをします。

今回はなんとなくPHPのバージョンを上げないままにしておくので、推奨されているVer5.4をインストールします。

下記を参考にしつつ、

composer create-project — prefer-dist laravel/laravel myApp “5.4.*”

と打ち込みますと、

Your requirements could not be resolved to an installable set of packages.

とエラーが出てしまうので、php56-mbstringをインストールします。

sudo yum install php56-mbstring

ここでもう一度先ほどのcomposerコマンドを打つと今度はメモリ不足のエラーが出てしまいます。

t2.microだとswap領域が足りなくなってしまうみたいなので、領域を確保してあげましょう。

下記を参考に領域を確保したら今度こそインストール成功です。


環境はここで一旦いい感じになりました。

ので、

cd myApp
php artisan serve

そして管理画面からアプリにアクセスしてみます。

すると、割とでかめのOopsと出ます。

AWS Cloud9では

実行中のアプリケーションをプレビューする際にはポートとして8080,8081,8082を使うようで、プレビュー画面自体は8080を使うようになっているようです。

https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/app-preview.html

なのでポートを指定してあげます。

php artisan serve — port=8080

これで再度アクセスすると見られますね!

この部分を人にシェアしてあげればすぐに開発中の画面が見せられますね!

ちなみにPHP7.2にあげてから同じような手順を踏むと特にメモリ不足になりませんでした。奥が深っそう!

こちらからは以上です。