AWS Batchのストレージ容量を増やそうとEC2を作ってAMIをとろうとしたらDockerが起動しなくなっていたので内容をメモしておく。
現象
の手順でAWS Batchのストレージ容量を増やそうとEC2を作ってAMIをとろうとしたらDockerが起動しなくなっていた。
/var/log/dockerを見ると以下のようなエラーが出ていた。
time="2019-06-14T02:04:44.849321733Z" level=error msg="[graphdriver] prior storage driver overlay2 failed: overlay2: unknown option dm.basesize"
Error starting daemon: error initializing graphdriver: overlay2: unknown option dm.basesize
対応方法
以下のように--storage-driver devicemapperを追加してdockerのストレージドライバを変更した。
#cloud-boothook
#!/bin/bash
cloud-init-per once docker_options echo 'OPTIONS="${OPTIONS} --storage-driver devicemapper --storage-opt dm.basesize=20G"' >> /etc/sysconfig/docker
原因
ここらへんの対応でDockerのデフォルトストレージドライバが変更になったらしい。
https://github.com/moby/moby/releases/tag/v1.13.1
AMIからEC2を起動する際にセキュリティアップデートが走ってDockerがアップデートし、デフォルトストレージドライバが変わってオプション指定が不整合になった?