概要
- Windows10のWSL2で動作しているdockerデーモンが起動しない事象があった(詳細なバージョンは以下)
/var/run/docker.pid
を削除の上、ps axf | grep docker | grep -v grep | awk '{print "kill -9 " $1}' | sudo sh
で直った
事象
dockerデーモンが起動しない
$ docker ps Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- 詳細ログを確認すると、なんか
/var/run/docker.pid
があるけど起動してない的に思えたのでファイル削除
$ journalctl -xeu docker.service Dec 07 09:38:53 xxxxxxx dockerd[37044]: time="2023-12-07T09:38:53.430712328+09:00" level=info msg="2023-12-07T09:38:53.430712328+09:00" level=info msg="Starting up" Dec 07 09:38:53 xxxxxxx dockerd[37044]: failed to start daemon: pid file found, ensure docker is not running or delete /var/run/docker.pid Dec 07 09:38:53 xxxxxxx systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE ░░ Subject: Unit process exited --- $ sudo rm /var/run/docker.pid
pid消したけど直らない
$ sudo systemctl start docker Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xeu docker.service" for details. --- $ journalctl -xeu docker.service Dec 07 09:52:09 xxxxxxx dockerd[53430]: failed to start daemon: error while opening volume store metadata database (/var/lib/docker/volumes/metadata.db): timeout Dec 07 09:52:09 xxxxxxx systemd[1]: docker.service: Main process exited, code=exited, status=1/FAILURE
直った対応
- 事前に
ps axf | grep docker | grep -v grep
でdockerのプロセスいっぱいおるなぁと確認してから実行
ps axf | grep docker | grep -v grep | awk '{print "kill -9 " $1}' | sudo sh
- "volume store metadata database timeout"で検索して見つけた記事*1による対処
- 以下も亜種
- 上記stack overflowで参照していたIssue(DockerのOSSリポジトリ、mobyのやつ)
プロセス確認とdockerデーモンの起動
$ ps axf | grep docker | grep -v grep $ sudo systemctl start docker $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
バージョン
Windows&WSL2
PS C:\Users\maruk> wsl.exe --version WSL バージョン: 2.0.9.0 カーネル バージョン: 5.15.133.1-1 WSLg バージョン: 1.0.59 MSRDC バージョン: 1.2.4677 Direct3D バージョン: 1.611.1-81528511 DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp Windows バージョン: 10.0.22621.2715
Docker
$ docker version Client: Docker Engine - Community Version: 23.0.1 API version: 1.42 Go version: go1.19.5 Git commit: a5ee5b1 Built: Thu Feb 9 19:47:01 2023 OS/Arch: linux/amd64 Context: default Server: Docker Engine - Community Engine: Version: 23.0.1 API version: 1.42 (minimum version 1.12) Go version: go1.19.5 Git commit: bc3805a Built: Thu Feb 9 19:47:01 2023 OS/Arch: linux/amd64 Experimental: false containerd: Version: 1.6.18 GitCommit: 2456e983eb9e37e47538f59ea18f2043c9a73640 runc: Version: 1.1.4 GitCommit: v1.1.4-0-g5fd4c4d docker-init: Version: 0.19.0 GitCommit: de40ad0
補足
アイキャッチ画像生成
Bing AIのImage Creatorで作成(DALL·E 3によるもの)
指示文章
- アニメチックにデフォルメされたDockerのクジラが泣いているところの画像を生成してください。
- Dockerはコンテナ技術のデファクトスタンダードであり、くじらが泣いている理由はDocker Daemonが起動できないからです。