0
1

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.

Cloud9でlaravel開発環境の構築

Last updated at Posted at 2019-01-23

#背景
せっかくのCloud9でlaravelの開発を進めていく。

#思ったこと
Cloud9からはenvironment配下しか参照できないのか?
とりあえずenvironment配下にlaravelプロジェクトを作成する。

#create-projectを実行

environment]$ ~/composer.phar create-project --prefer-dist laravel/laravel test-laravel

エラー出ました。

The following exception is caused by a lack of memory or swap, or not having swap configured
Check https://getcomposer.org/doc/articles/troubleshooting.md#proc-open-fork-failed-errors for details

メモリが足りないらしい。対処は
Composerでメモリエラーが発生したときの対処方法【詳細解説】を参考にさせていただきました。

php.iniのメモリ設定を変更。

$ sudo vi /etc/php.ini

memory_limit = 512M

apache再起動。

$ sudo systemctl restart httpd

確認。

$ php -r 'phpinfo();' | grep memory_limit

memory_limit => 512M => 512M

スワップファイルの作成

$ sudo -s /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024

$ sudo -s /sbin/mkswap /var/swap.1
$ sudo -s /sbin/swapon /var/swap.1

###できました。
test-develop - AWS Cloud9 2019-01-24 01-35-31.png

#しかし
403 Forbidden 2019-01-24 02-12-22.png

permissionで引っかかる。

###対処

ここのpermissionの設定は全て行う。

あとは、ec2-userのpermissionの設定も変更する。

$ sudo chown -R ec2-user:www /home/ec2-user

$ sudo chmod 2775 /home/ec2-user

###出ました。

Laravel 2019-01-24 02-19-22.png

#さらに
このあと朝になって、セッション切れて再度SSHで接続したら、

ssh -i "xxx.pem" ec2-user@xx.xx.xx.xx
ec2-user@xx.xx.xx.xx: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

接続できません。Permission変更しちゃったからssh接続できなくなった。
詰んだか、、、と思い半泣きで復旧方法を探す。

調べたら、接続できない原因は公開鍵のPermissionは700でないといけない。
また、ec2-userのPermissionも700でないといけない。
セキュリティー考えたらそうだ。

開発用の別user作るべきですね。。。

###なんと復旧できるみたい

参考:EC2でsshログインできなくなったとき(自爆)

作業用インスタンスでPermissionを戻す。

$ sudo chown -R ec2-user:ec2-user /home/ec2-user

$ sudo chmod 700 ec2-user

念のため鍵のPermissionも設定
$ chmod 0700 ~/.ssh
$ chmod 0600 ~/.ssh/authorized_keys

で、元々のインスタンスにアタッチし直す。

※参考にした手順では、「/dev/sda1」を入力とありましたが設定するとインスタンスが起動できない。「/dev/xvda」を設定したら起動できた。

EC2 Management Console 2019-01-25 07-57-02.png

###再度sshしたら接続できました。

$ ssh -i "xxx.pem" ec2-user@xx.xx.xx.xx
Last login: Thu Jan 24 17:02:14 2019 from softbank126209053044.bbtec.net

       __|  __|_  )
       _|  (     /   Amazon Linux 2 AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-2/

#ちゃんと見たら、Could9のCreate environmentの際にパス指定ができました。

Create a new environment 2019-01-25 07-34-30.png

これで、最初の疑問について解決。
/var/www配下にenvironomentを作成する。

これでcludo9でlaravel開発できそう。
test-dev - AWS Cloud9 2019-01-25 08-05-20.png

バーチャルホストの設定を変更するとトップページも表示されました。
Laravel 2019-01-24 02-19-22.png

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?