テスト環境としてSymfonyが使える環境が欲しいと思い、Cloud9上に構築してみました。
今回構築したときの備忘録です。
同様のことは、EC2でAMIをAmazon Linuxにしても動くと思います。
PHPのインストール
Cloud9のOSは、2019年7月時点でAmazon Linux2ではなく、以前のAmazon Linuxでした。
なので、amazon-linux-extras
は使えませんでした。
$ cat /etc/system-release
Amazon Linux AMI release 2018.03
$ sudo yum -y update
$ sudo yum -y install php72 php72-mbstring php72-pdo
$ sudo unlink /usr/bin/php
$ sudo ln -s /etc/alternatives/php7 /usr/bin/php
$ php -v
PHP 7.2.19 (cli) (built: Jun 12 2019 20:55:29) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
Symfonyのインストール
$ wget https://get.symfony.com/cli/installer -O - | bash
$ export PATH="$HOME/.symfony/bin:$PATH" >> .bash_profile
$ sudo mv /home/ec2-user/.symfony/bin/symfony /usr/local/bin/symfony
$ source .bash_profile
$ symfony -v
Symfony CLI version v4.6.2 (c) 2017-2019 Symfony SAS
Composerのインストール
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
$ php composer-setup.php
$ php -r "unlink('composer-setup.php');"
$ sudo mv composer.phar /usr/local/bin/composer
$ composer -v
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.8.6 2019-06-11 15:03:05
https://getcomposer.org/download/
http://symdoc.kwalk.jp/doc/book/installation
Symfonyの起動
Cloud9では外部からアクセスできるポート番号が決まっているため、ポート番号を指定して起動する必要があります。
$ symfony new --full my_project
$ cd my_project/
$ php bin/console server:start *:8080
メニュー > Preview > Preview Running Applicationを押すと実行ページのプレビューが表示されます。
Symfonyの停止
$ php bin/console server:stop
(補足)アプリの状態をするコマンド
$ php bin/console about