Search code examples
dockerdocker-composedocker-volume

Undeletable or persistent docker-compose volumes or data storage


is there possible to somehow create persistent storage for containers, created with docker-compose and don't remove them even when running docker-compose down -v so they will be automaticly attached to their containers after again starting the docker-compose up -d ?


Solution

  • What I usually do is to use an external volume, something like:

    $ docker volume create nodemodules
    

    docker-compose.yml

    version: '3.7'
    
    services:
      frontend:
        image: node:11
        volumes:
          - nodemodules:/app/node_modules
    
    volumes:
      nodemodules:
        external: true
    

    Refer the docs for more info: https://docs.docker.com/compose/compose-file/#external