1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

WSL(Ubuntu22.04)環境でDockerが動作しない問題 "Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running"

Last updated at Posted at 2024-10-12

作業概要

WSL環境構築中にDockerが起動しない問題が発生しました。
普段はVagrantで環境構築を行っていますが、今回は学習も兼ねてWSLを使用してみました。

エラー発生まで完了している作業

WSL(Ubuntu22.04)インストール
Docker、docker-composeもインストール

エラー内容

docker-compose build, docker psなどのDockerコマンドを実行したら以下のエラーが発生。

$ docker-compose build
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running

いつものようにDockerが起動していないだけだろう..と思いsudo service docker startコマンドを実行したものの解決せず・・・。

調査

色々記事を漁っていると以下の記事を発見

どうやらネットワーク関連の問題ぽかったです。

原因

Ubuntu(22.04)はiptables-nftとかいうパケットフィルタリング?のようなものをデフォルトで使用しているみたいでこいつが悪さしていたみたいです。

解決策

問題のiptables-nftを手動で別のものに切り替えることで解決するみたいなので早速実行してみましょう。
sudo update-alternatives --config iptablesコマンドを実行してください。
すると、表示が対話モードになります。
そこからiptables-legacyというものに切り替えたいので、それに該当する1を入力してください。

$ sudo update-alternatives --config iptables
There are 2 choices for the alternative iptables (providing /usr/sbin/iptables).

  Selection    Path                       Priority   Status
------------------------------------------------------------
* 0            /usr/sbin/iptables-nft      20        auto mode
  1            /usr/sbin/iptables-legacy   10        manual mode
  2            /usr/sbin/iptables-nft      20        manual mode

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/sbin/iptables-legacy to provide /usr/sbin/iptables (iptables) in manual mode

入力したらsudo service docker startを実行するとうまくいくはずです。

参考記事

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?