无法在CentOS 7上运行或生成Docker映像

无法在CentOS 7上运行或生成Docker映像,docker,Docker,我现在正在学习使用Docker,我已经在我的服务器(CentOS 7)上安装了Docker。但当我遵循官方教程时,我遇到了一个无法继续的问题: mkdir /var/lib/docker/overlay/7849ab40fd8072dcd724387dab14707bb4af0e94d9ab4f71795d0c478c3d49a9-init/merged/dev/shm: invalid argument 当我构建/运行大多数图像时会出现这种情况(没有失败的图像很少是OfficePython:

我现在正在学习使用Docker,我已经在我的服务器(CentOS 7)上安装了Docker。但当我遵循官方教程时,我遇到了一个无法继续的问题:

mkdir /var/lib/docker/overlay/7849ab40fd8072dcd724387dab14707bb4af0e94d9ab4f71795d0c478c3d49a9-init/merged/dev/shm: invalid argument
当我构建/运行大多数图像时会出现这种情况(没有失败的图像很少是OfficePython:latest和hello world)

我试图做的是拉取官方图像“docker/whalesay”,并按如下方式运行它:

docker run docker/whalesay
Unable to find image 'docker/whalesay:latest' locally
latest: Pulling from docker/whalesay
e190868d63f8: Pull complete 
909cd34c6fd7: Pull complete 
0b9bfabab7c1: Pull complete 
a3ed95caeb02: Pull complete 
00bf65475aba: Pull complete 
c57b6bcc83e3: Pull complete 
8978f6879e2f: Pull complete 
8eed3712d2cf: Pull complete 
Digest: sha256:178598e51a26abbc958b8a2e48825c90bc22e641de3d31e18aaf55f3258ba93b
Status: Downloaded newer image for docker/whalesay:latest
docker: Error response from daemon: mkdir /var/lib/docker/overlay/fb4b7f34f0963d158856dadccec49963e47716865c83066f7e6eaf0bae057a13-init/merged/dev/shm: invalid argument.
See 'docker run --help'.
这是我的docker信息:

Containers: 5
Running: 0
Paused: 0
Stopped: 5
Images: 4
Server Version: 1.13.0
Storage Driver: overlay
Backing Filesystem: extfs
Supports d_type: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins: 
Volume: local
Network: bridge host macvlan null overlay
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 03e5862ec0d8d3b3f750e19fca3ee367e13c090e
runc version: 2f7393a47307a16f8cee44a37b262e8b81021e3e
init version: 949e6fa
Security Options:
seccomp
Profile: default
Kernel Version: 3.10.0-327.22.2.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.702 GiB
Name: iZ25d1y69iaZ
ID: VJAP:FBMM:CQ5I:KIV5:FO47:VJUJ:ECU2:5TOS:JZBE:EUSH:HUFF:NCAZ
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
我试图搜索,但没有找到相同的问题。这看起来像是一个文件系统问题,下面是我的df-h和文件-s/dev/vda1

Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        40G  4.9G   33G  14% /
devtmpfs        1.9G     0  1.9G   0% /dev
tmpfs           1.9G     0  1.9G   0% /dev/shm
tmpfs           1.9G  352K  1.9G   1% /run
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
tmpfs           380M     0  380M   0% /run/user/1000

我是Docker的新手,所以这可能是相同的配置问题或版本问题,但我还没有发现

我感谢您的建议和回答

编辑:,讨论这个问题

我记得3.10内核和overlayfs/ext4/xfs文件系统出现了一个问题,一些人注意到它又开始使用更新的内核(我认为是在3.18中,
overlayfs
模块被添加到内核中)

因此,如果您可以选择升级内核,那么可以检查
overlayfs+ext4
是否有效

如果内核升级不是一个选项,那么我想您唯一的选择就是使用另一个存储驱动程序(
aufs
应该不可用,所以)

编辑:,并讨论这个问题

我记得3.10内核和overlayfs/ext4/xfs文件系统出现了一个问题,一些人注意到它又开始使用更新的内核(我认为是在3.18中,
overlayfs
模块被添加到内核中)

因此,如果您可以选择升级内核,那么可以检查
overlayfs+ext4
是否有效


如果内核升级不是一个选项,那么我想您唯一的选择就是使用另一个存储驱动程序(
aufs
应该不可用,所以)

我在SLES12中,通过

  • 服务站装卸工
  • vi/etc/docker/daemon.json(这是一个新文件)
  • 添加以下条目
  • { “存储驱动程序”:“devicemapper” }

  • 服务启动docker

  • 我在SLES12中,我通过

  • 服务站装卸工
  • vi/etc/docker/daemon.json(这是一个新文件)
  • 添加以下条目
  • { “存储驱动程序”:“devicemapper” }

  • 服务启动docker

  • 谢谢,我稍后将尝试这两个选项并发表评论,以解决此问题。解决方案非常简单明了:通过添加--storage driver=deviceapper将存储驱动程序类型更改为deviceapper可以正常工作。因此,这类问题应该通过检查本地存储信息来解决(文件系统类型、内核版本等)并从这些合适的存储驱动程序中选择一个。是的。另一个选项是将有问题的设置中的overlayfs模块列入黑名单。然后,安装Docker后,它检测到overlayfs不可用,并选择一个更好的存储驱动程序。谢谢,我将尝试这两个选项,稍后发表评论,以解决此问题解决方案非常简单明了:通过添加--storage driver=deviceapper将存储驱动程序类型更改为deviceapper可以很好地工作。因此,这类问题应该通过检查本地存储信息(文件系统类型、内核版本等)来解决并选择其中一个合适的存储驱动程序。是的。另一个选项是将有问题的设置中的overlayfs模块列入黑名单。然后,当安装Docker时,它检测到overlayfs不可用,并选择更好的存储驱动程序。在sath89/oracle-12c Docker映像上为我工作在sath89/oracle-12c Docker映像上为我工作
    /dev/vda1: Linux rev 1.0 ext4 filesystem data, UUID=80b9b662-0a1d-4e84-b07b-c1bf19e72d97 (needs journal recovery) (extents) (large files) (huge files)