EC2インスタンスはデフォルトではswaponが無効でt1.microだとdeployスクリプトの実行時oomで落ちることがあったのでswaponを組み込んでみることにした。
.ebextensions/01_swapon.configにswapon設定を書く。
commands:
01_swapon:
command: |
SWAPFILENAME=/swap.img
test -e $SWAPFILENAME && exit 0
MEMSIZE=`cat /proc/meminfo | grep MemTotal | awk '{print $2}'`
if [ $MEMSIZE -lt 2097152 ]; then
SIZE=$((MEMSIZE * 2))k
elif [ $MEMSIZE -lt 8388608 ]; then
SIZE=${MEMSIZE}k
elif [ $MEMSIZE -lt 67108864 ]; then
SIZE=$((MEMSIZE / 2))k
else
SIZE=4194304k
fi
fallocate -l $SIZE $SWAPFILENAME && mkswap $SWAPFILENAME && chmod 0600 $SWAPFILENAME && swapon $SWAPFILENAME