Docker Volumes Management: Difference between revisions

From WikiMLT
m (Стадий: 6 [Фаза:Утвърждаване, Статус:Утвърден]; Категория:Containers)
 
Line 31: Line 31:


== Explanations ==
== Explanations ==
Note when you are using <code>docker compose</code>, unless specify path in the left side on the ''<code>services:</code>  <code>container-name:</code> <code>volumes:</code>'' section docker will automatically create a volume <code>/var/lib/do&shy;ck&shy;er/vo&shy;lu&shy;mes/</code> named after the '''container-name''' underscore '''_''' and the name of the '''volume'''.
Note when you are using <code>docker compose</code>, unless specify path in the left side on the ''<code>services:</code>  <code>container-name:</code> <code>volumes:</code>'' section docker will automatically create a volume <code>/var/lib/do&shy;ck&shy;er/vo&shy;lu&shy;mes/</code> named after the 1) '''directory-name''' where the <code>docker-compose.yml</code> is located, 2) underscore '''_''' and 3) the name of the '''volume-name'''.


== Examples ==
== Examples ==
Line 37: Line 37:
example 1
example 1
</syntaxhighlight><syntaxhighlight lang="shell" class="code-continue">
</syntaxhighlight><syntaxhighlight lang="shell" class="code-continue">
docker-compose.yml
container-name/docker-compose.yml
</syntaxhighlight>
</syntaxhighlight>


Line 54: Line 54:
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang="shell" class="code-continue">
<syntaxhighlight lang="shell" class="code-continue">
docker-compose.yml
container-name/docker-compose.yml
</syntaxhighlight>
</syntaxhighlight>
<syntaxhighlight lang="yaml" line="1" highlight="6,8" class="code-continue mlw-shell-gray">
<syntaxhighlight lang="yaml" line="1" highlight="6,8" class="code-continue mlw-shell-gray">

Latest revision as of 16:44, 24 May 2023

Ba­sic com­mands

docker volume
Usage:  docker volume COMMAND

Manage volumes

Commands:
  create      Create a volume
  inspect     Display detailed information on one or more volumes
  ls          List volumes
  prune       Remove all unused local volumes
  rm          Remove one or more volumes

Run 'docker volume COMMAND --help' for more information on a command.
docker volume create volume_name
docker volume ls
docker volume inspect volume_name
sudo ls -la /var/lib/docker/volumes/
docker volume (rm|prune) volume_name

Ex­pla­na­tions

Note when you are us­ing dock­er com­pose, un­less spec­i­fy path in the left side on the ser­vices: con­tain­er-name: vol­umes: sec­tion dock­er will au­to­mat­i­cal­ly cre­ate a vol­ume /​​​var/​​​lib/​​​do­ck­er/​​​vo­lu­mes/​​​ named af­ter the 1) di­rec­to­ry-name where the docker-compose.yml is lo­cat­ed, 2) un­der­score _ and 3) the name of the vol­ume-name.

Ex­am­ples

In Ex­am­ple 1 the con­tain­ers di­rec­to­ry :/​​​data will be bound (mount­ed) to the di­rec­to­ry ./​​​base with­in the cur­rent di­rec­to­ry where the docker-compose.yml is lo­cat­ed. In this case no vol­ume is spec­i­fied.

example 1
container-name/docker-compose.yml
version: "3"
services:
  container-name:
    image: image_name
    volumes:
    - ./base:/data

In Ex­am­ple 2 the di­rec­to­ry used as a vol­ume is /var/lib/­dock­er/vol­umes/­con­tain­er-name_base/ and it will be au­to­mat­i­cal­ly cre­at­ed un­less some ad­di­tion­al op­tions are spec­i­fied with­in the vol­umes: sec­tion. The ac­tu­al di­rec­to­ry :/​​​data of the con­tain­er will be bound to /var/lib/­dock­er/vol­umes/­con­tain­er-name_base/_­da­ta

example 2
container-name/docker-compose.yml
version: "3"
services:
  container-name:
    image: image_name
    volumes:
    - base:/data
volumes:
  base:

Ref­er­ences