※個人的なメモのため、信用に値しません。
AWS Cloud9のCreate environmentを選ぶ→DetailsからNew EC2 instanceを選ぶ。
Instance typeはt2.micro。PlatformはAmazon Linux2。Timeoutは30min。Network settingsのSSHを選ぶ。(SSMだと理由は定かではないが接続されない)VPCはインターネットゲートウェイが接続されているパブリックサブネットを選んだ。
phpとgitのバージョン確認をする。
$ php -v PHP 7.2.24 (cli) (built: Oct 31 2019 18:27:08) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Xdebug v3.1.6, Copyright (c) 2002-2022, by Derick Rethans $ git -v git version 2.39.1
必要に応じてupdateするが今回はこのまま使用する。
なお今回は他人のリポジトリから対象のプロジェクトをgit cloneをした。git cloneはtokenを発行する必要がある。gitのsettingのdeveloper settingsからtokenを作成する必要がある。beta版のFine-grained personal access tokensで作ると、すべての権限を付与してみたがうまく行かず結局Classicなtokenを利用したらうまく行った。
php artisan serve –port=8080
でWebサーバ起動をしてみたら以下のエラーが出た。
failed to open stream: No such file or directory in /home/ec2-user/environment/LaravelPortfolio/artisan on line 18
vendorディレクトリがないのでcomposer installをする必要がある。vendorディレクトリはgitリポジトリの配下には配置しないらしい。
参考URL
https://ja.stackoverflow.com/questions/23725/vendor%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E3%82%92git%E7%AE%A1%E7%90%86%E4%B8%8B%E3%81%AB%E7%BD%AE%E3%81%8B%E3%81%AA%E3%81%84%E3%81%AE%E3%81%AF%E4%BD%95%E6%95%85
そのようにする主な理由はリポジトリの肥大化を防ぐためだろう。
laravelリポジトリに入ってcomposer updateをすると色々とエラーが出たが「 it is missing from your system. Install or enable PHP’s simplexml extension.」と言われている箇所に問題があると気が付く。simplexmlというのが入っていないらしい。
sudo yum install php-xml -y
コメント