AWS EC2 において、Auto Scaling で自動作成された CentOS のインスタンスをシェルスクリプトで初期化しようとしています。

その場合、普通に Composer をインストールしようとするとメモリ不足でエラーが発生してしまいます。
スワップファイルを作成して対応できると聞き、以下のように書きました

# Generate a swap file for composer
sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
sudo /sbin/mkswap /var/swap.1
sudo /sbin/swapon /var/swap.1

# Install composer
cd /var/www/html
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
php composer.phar install

しかし、作成されたインスタンスを確認すると、Composer のインストールができていないことが分かりました。
スワップファイルが作成されるところまではできているので、Composer をインストールする段階でコケているのは分かっています。

どうコケているのか確かめるために、素の CentOS インスタンスを立ち上げ、シェルスクリプトの中身を順にコピペして実行したのですが、この方法だと正常にインストールできてしまいました。

シェルスクリプトで初期化した時だけ失敗するのは、どのような原因が考えられますか?