Docker撰写了如何将容器安装到已经存在的新卷中

时间:2019-12-22 06:21:15

标签: docker docker-compose docker-volume

我试图将我的应用程序和mongo挂载到新卷,因为现有卷上没有剩余空间,但是仍然遇到相同的错误。我做错了某些事情。我是Docker的新手,请指导

错误:

ERROR: write /var/lib/docker/tmp/GetImageBlob735048270: no space left on device

以下是我的docker compose文件

version: "2"

    services:
      pim:
        build: .
        volumes:
           - pim-volume:.
        ports:
          - "5100:5100"
        links:
          - mongo
      mongo:
        container_name: mongo
        image: mongo
        volumes:
          - pim-volume:./data/db
        ports:
          - "27017:27017"
    volumes:
        pim-volume:
            external: true

以下是体积检查

[
    {
        "CreatedAt": "2019-12-22T09:08:50+04:00",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/pim-volume/_data",
        "Name": "pim-volume",
        "Options": {
            "device": "overlay",
            "o": "size=5GB",
            "type": "overlay"
        },
        "Scope": "local"
    }
]

1 个答案:

答案 0 :(得分:0)

您可能希望通过删除孤立的卷和图像来开始清理空间:

首先,检查您的孤立卷:

docker volume ls -qf dangling=true

您可以通过运行以下命令将其删除:

docker volume rm $(docker volume ls -qf dangling=true)

要删除旧的/未使用的图像,请运行:

docker rmi $(docker images -q -f "dangling=true")