我在CentOS 7 VM中执行旧版本的docker时遇到问题。我安装了docker Docker version 17.09.1-ce
,因为它是我需要的版本,我需要在它上面运行一些软件,并且最新版本Docker version 17.12.1-ce
与之不兼容,所以我需要安装旧版本。
然而,我按照docker中的描述安装了docker,看起来它做得很好,但是当我去运行hello world image时,我得到了:
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
所以,然后我做了:
dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
然后我收到了这个错误:
WARN[2018-03-04T19:32:51.374105228Z] [!] DON'T BIND ON ANY IP ADDRESS WITHOUT setting --tlsverify IF YOU DON'T KNOW WHAT YOU'RE DOING [!]
INFO[2018-03-04T19:32:51.404324386Z] libcontainerd: new containerd process, pid: 14728
WARN[0000] containerd: low RLIMIT_NOFILE changing to max current=1024 max=4096
ERRO[2018-03-04T19:32:52.452025257Z] [graphdriver] prior storage driver overlay2 failed: driver not supported
Error starting daemon: error initializing graphdriver: driver not supported
那是什么?为了能够执行docker守护进程但仍然使用已安装的docker版本,我该怎么做?
答案 0 :(得分:0)
当尝试将docker-machine与CentOS VM一起使用时,我遇到了类似的问题。将docker-machine副本复制到名为10-machine.conf的文件中:
/etc/systemd/system/docker.service.d/10-machine.conf
在此文件中,dockerd传递--storage-driver = overlay2。当我删除此选项时,泊坞窗将启动而不会出现问题。
要进行半永久性修复,我创建了一个新文件:
/etc/systemd/system/docker.service.d/20-machine.conf
我删除了--storage-driver = overlay2选项。然后,Docker机器将正确创建环境。
奇怪的是,如果我运行了docker info,我的docker引擎确实在使用overlay2。
答案 1 :(得分:0)
当我输入dockerd
时遇到相同的问题,它显示错误为INFO[2019-12-03T01:39:44.030124494-05:00] Error while creating filesystem xfs on device docker-253:1-3117512-base: exit status 1 storage-driver=devicemapper
ERRO[2019-12-03T01:39:44.030161517-05:00] [graphdriver] prior storage driver devicemapper failed: exit status 1
failed to start daemon: error initializing graphdriver: exit status 1
我将存储选项更改为使用ext4之类的
dockerd --storage-opt dm.fs=ext4
和docker成功启动
有关更多存储选项,请使用man dockerd