Bersih bersih docker

Mengatasi kesalahan ketika tanpa sengaja menghapus folder /var/lib/docker/aufs atau isinya. Container docker akan bersatus Dead. Karena folder aufs berisi informasi semua layer yang membentuk container.

Saat akan me-rebuild container akan muncul error seperti,

$ docker-compose build
ERROR: Service 'master' failed to build: failed to register layer:
open /var/lib/docker/aufs/layers/<container_id>: no such file or directory

atau,

$ docker-compose build
error creating aufs mount to /var/lib/docker/aufs/mnt
/...:
invalid argument

Bahkan perintah load image dalam bentuk file pun akan menghasilkan error,

$ docker image load -i docker-image-filename
ERROR ...

Penyebabnya adalah tidak konsistennya informasi layer yang membentuk container setelah folder atau isi folder /var/lib/docker/aufs terhapus.

Container dengan status Dead tidak bisa direcovery. Harus di-rebuild. Namun sebelum bisa di-rebuild, file-file informasi layer container harus dibersihkan semuanya secara manual.

Proses bersih-bersih, pertama hapus semua container dan image,

$ docker rm -f $(docker ps -a -q)
$ docker rmi -f $(docker images -a -q)

Berhentikan service docker, hapus file dan folder informasi layer. Dan jalankan kembali service docker.

$ sudo service docker stop
$ sudo rm -rf /var/lib/docker/aufs
$ sudo rm -f /var/lib/docker/linkgraph.db
$ sudo rm -rf /var/lib/docker/image/aufs
$ sudo service docker start

Setelah itu container docker bisa di-rebuild kembali.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.