简体   繁体   中英

Adding a label or name to volume in docker-compose.yml file

I need to find volume by label or name easily not by a docker assigned id like:

docker volume ls --filter label=key=value

but if I try add a 'container_name' or 'labels' to docker-compose.yaml I can't see any assigned label of name to volume when I inspect it, here is an output:

>>> docker volume inspect <volume_id>
[
    {
        "CreatedAt": "2020-10-28T11:41:51+01:00",
        "Driver": "local",
        "Labels": null,
        "Mountpoint": "/var/lib/docker/volumes/4dce13df34f4630b34fbf1f853f7b59dbee2e3150a5122fa38d02024c155ec7d/_data",
        "Name": "4dce13df34f4630b34fbf1f853f7b59dbee2e3150a5122fa38d02024c155ec7d",
        "Options": null,
        "Scope": "local"
    }
]


I believe I can filter volumes by labels and name.

Here is a part of docker-compose.yml config file for mongo service:

version: '3.4'

services:
  mongodb:
    container_name: some_name
    image: mongo
    labels:
      com.docker.compose.project: app-name  
    restart: always
    ports:
      - 27017:27017
    volumes:
      - ./mongo:/data/db

I'm not exactly sure what you're tring to acheive here, but I hope something in my response will be helpful.

You can define a named volume within your docker-compose.yml

version: '3.4'

services:
  mongodb:
    container_name: some_name
    image: mongo
    labels:
      com.docker.compose.project: app-name  
    restart: always
    ports:
      - 27017:27017
    volumes:
      - mongo_db:/data/db

volumes:
  mongo_db:

You could then use the docker volume inspect command to see some details about this volume.

docker volume inspect mongo_db

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM