CircleCI + Capistranoでデプロイできなくて焦った話
Railsアプリを作成する際は、CircleCIを使ってCapistranoでAWS EC2にデプロイしているのですが、ある日急にデプロイできなくなりました。。
CircleCIのログを見ると以下のメッセージが。
01 /srv/xxxx/shared/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/compile_cache/iseq.rb:37:in `fetch' 01 : 01 No space left on device - bs_fetch:atomic_write_cache_file:write 01 ( 01 Errno::ENOSPC 01 ) 01 from /srv/xxxx/shared/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/compile_cache/iseq.rb:37:in `load_iseq' 01 from /srv/xxxx/shared/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `require' 01 from /srv/xxxx/shared/bundle/ruby/2.5.0/gems/bootsnap-1.3.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:21:in `block in requir
No space left on device
とありますが、EC2インスタンスの容量が足りないようです。
EC2のインスタンスにログインしてみます。
__| __|_ ) _| ( / Amazon Linux AMI ___|\___|___| https://aws.amazon.com/amazon-linux-ami/2018.03-release-notes/ /home/xxxx/.rbenv/libexec/rbenv-init: 行 131: ヒアドキュメント用一時ファイルを作成できません: デバイスに空き領域がありません
空き容量が無いって出てますやん。
$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 483M 60K 483M 1% /dev tmpfs 493M 0 493M 0% /dev/shm /dev/xvda1 7.8G 7.8G 0 100% /
100%やん!
ということで、以下のコマンドでログをクリア。
ファイル自体は削除せず内容を空に。
$ find /var/log/ -type f -name \* -exec cp -f /dev/null {} \;
結果、容量が空き無事にデプロイ出来ました。
$ df -h ファイルシス サイズ 使用 残り 使用% マウント位置 devtmpfs 483M 60K 483M 1% /dev tmpfs 493M 0 493M 0% /dev/shm /dev/xvda1 7.8G 4.9G 2.9G 63% /
一応解決! ただ、もうちょいサイズは増やさないとなー