docker – How to Turn Anonymous Volume into Named Volume in Docker

dockerdocker-compose

I have tried out a docker image using the docker command line without specifying names for volumes. Now I found that I want to continue using this container/image but by defining the container in docker compose.

What is best practice for keeping the data from the anonymous/unnamed volumes and use them in the new container created by docker compose?

  • Can I somehow convert the unnamed into named volumes?
  • or should I create a new container with docker compose with named volumes and copy the data?
  • or any other option?

Best Answer

You cannot currently rename existing volumes. (This is true whether they were previously named or were unnamed and had their names auto-generated.)

You can see this issue for more information on implementation of this feature, as well as add your "+1"/"Thumbs up" to let the developers know that you want it.

Without that, as far as I know, the only good way to do it is to create the new named volume and copy the data.