0

我在以 root 用户身份登录的 Mac 上的 Ubuntu 的流浪虚拟框中运行 docker,我试图从 devicemapper 切换到覆盖,但我收到一条错误消息:

root@vagrant-ubuntu-trusty-64:/# service docker stop
docker stop/waiting
root@vagrant-ubuntu-trusty-64:/# rm -rf /var/lib/docker
root@vagrant-ubuntu-trusty-64:/# docker daemon -s overlay
Command "daemon" is deprecated, and will be removed in Docker 1.16. Please run `dockerd` directly.
INFO[0000] libcontainerd: new containerd process, pid: 6788
WARN[0000] containerd: low RLIMIT_NOFILE changing to max  current=1024 max=4096
ERRO[0001] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
Error starting daemon: error initializing graphdriver: driver not supported
root@vagrant-ubuntu-trusty-64:/#

我尝试了以下说明:

http://www.projectatomic.io/blog/2015/06/notes-on-fedora-centos-and-docker-storage-drivers/ 无法在 Ubuntu 16.04 中启动 Docker 服务

但它们都不适合我。

当我尝试遵循以下文档时:

https://docs.docker.com/engine/userguide/storagedriver/overlayfs-driver/

我被困在第 2 步,因为 grep 没有从 lsmod 返回任何“覆盖”:

root@vagrant-ubuntu-trusty-64:/# uname -r
3.13.0-107-generic
root@vagrant-ubuntu-trusty-64:/# lsmod | grep overlay
root@vagrant-ubuntu-trusty-64:/#


root@vagrant-ubuntu-trusty-64:/# dockerd --storage-driver=overlay
INFO[0000] libcontainerd: new containerd process, pid: 6816
WARN[0000] containerd: low RLIMIT_NOFILE changing to max  current=1024 max=4096
ERRO[0001] 'overlay' not found as a supported filesystem on this host. Please ensure kernel is new enough and has overlay support loaded.
Error starting daemon: error initializing graphdriver: driver not supported
root@vagrant-ubuntu-trusty-64:/#

我该如何解决这个问题?

4

1 回答 1

2

来自https://docs.docker.com/engine/userguide/storagedriver/overlayfs-driver/#configure-docker-with-the-overlayoverlay2-storage-driver

要将 Docker 配置为使用覆盖存储驱动程序,您的 Docker 主机必须运行 3.18 版 Linux 内核(最好是更新的)并加载覆盖内核模块。对于 overlay2 驱动程序,您的内核版本必须是 4.0 或更高版本。

您正在运行内核 3.13,所以没有骰子。我的建议是备份您的虚拟机并尝试将内核升级到更新版本(我有 14.04 并且有更新的内核可用,尽管尚未测试它们的工作情况)或将您的 Ubuntu VM 升级到 16.04

于 2017-01-29T22:25:33.953 回答