Tob*_*byR 7 docker windows-subsystem-for-linux
我已经使用 Docker 大约两个月了,在 Windows/WSL 上工作。前几天我需要重新启动我的机器,一旦它重新启动,我尝试再次设置我的 docker 容器,但遇到了我以前遇到的问题。我上次使用的所有解决方案都不起作用,谷歌上也没有。
我已经尝试了很多事情,互联网上的每一种可能性我都可以解决,而且我已经坚持了至少 8 个小时,希望不再浪费时间。我将列出一些我已经尝试过但不起作用的:
sudo usermod -aG docker $USER
sudo ln -s /mnt/c/Program\ Files/Docker/Docker/resources/bin/docker.exe /usr/bin/docker
我们的 make 文件中的命令运行:
docker-compose up -d
Run Code Online (Sandbox Code Playgroud)
我们使用 MakeFile 在 docker 命令方面让我们的生活更轻松,所以通常我会运行这个命令,它应该只是启动容器并正常工作。但是我得到了这个:
ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?
If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
Makefile:13: recipe for target 'up' failed
make: *** [up] Error 1
Run Code Online (Sandbox Code Playgroud)
然后我被推荐尝试sudo dockerd
,然后我得到这个错误,这解释了问题的一半,但我找不到关于如何解决我的问题的明确答案:
failed to start daemon: Error initializing network controller: error obtaining controller instance: failed to create NAT chain DOCKER: iptables failed: iptables -t nat -N DOCKER: iptables v1.6.1: can't initialize iptables table `nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
(exit status 3)
Run Code Online (Sandbox Code Playgroud)
我真的希望有人能够帮助我解决这个问题,因为我被困住了,需要让它发挥作用。
art*_*.sw 14
尝试运行
dockerd
或sudo dockerd
如果需要首先启动守护程序。如果你开始dockerd
用sudo
你可能要运行docker-compose up
用sudo
也。否则没关系。
Tob*_*byR 12
事实证明,问题与组有关。我发现有效的解决方案是使用以下方法删除用户组“docker”:
sudo groupadd docker
sudo usermod -aG docker $(whoami)
Run Code Online (Sandbox Code Playgroud)
然后我运行了我的 make 文件的命令并且它起作用了!
我希望这对你们中的一些人有益!
归档时间: |
|
查看次数: |
9184 次 |
最近记录: |