Volume de dados do contêiner do Docker
Pensamento
Depois que o contêiner do Docker for excluído, os dados gerados no contêiner também serão destruídos
O contêiner pode ser montado no volume de dados, e o volume de dados não será excluído se o contêiner for excluído
Um contêiner Docker e uma máquina externa podem trocar arquivos diretamente?
Não, a rede entre a máquina externa e o contêiner não é interoperável
Quer trocar dados entre contêineres?
Usando o volume de dados, dois contêineres são montados no mesmo volume de dados
Introdução ao volume de dados e sua função
Introdução
1. O volume de dados é um diretório ou arquivo no host.
2. Quando o diretório do contêiner e o diretório do volume de dados são vinculados, a modificação da outra parte será sincronizada imediatamente
3. Um volume de dados pode ser montado por vários contêineres em ao mesmo tempo
4. Um contêiner também. Vários volumes de dados podem ser montados
efeito
1: O volume de dados pode compartilhar ou reutilizar dados entre contêineres
2: As mudanças no volume podem ter efeito direto
3: As mudanças no volume de dados não serão incluídas na atualização do espelho
4: O ciclo de vida do volume de dados dura até que nenhum contêiner seja usado É até
5. Persistência de dados do contêiner (completamente independente do ciclo de vida do contêiner, então o Docker não excluirá seu volume de dados montado quando o contêiner for excluído)
6. Máquina externa e comunicação indireta do contêiner
7. Dados troca entre contêineres
Configure o volume de dados
Ao criar um contêiner de inicialização, use o parâmetro -v para definir o volume de dados
docker run ... –v 宿主机目录(文件):容器内目录(文件) ...
Por exemplo
Crie um contêiner chamado test e monte-o no volume de dados / root / data_contain
docker run -it --name=test -v /root/data:/root/data_contain redis:lastest
Precauções:
-
O diretório deve ser um caminho absoluto
-
Se o diretório não existir, ele será criado automaticamente
-
Vários volumes de dados podem ser montados
Troca de dados de vários contêineres
-
Vários contêineres montam o mesmo volume de dados
-
Recipiente de volume de dados
1. Crie e inicie o contêiner de volume de dados c3, use o parâmetro -v para definir o volume de dados
docker run –it --name=c3 –v /volume centos:7 /bin/bash
- Crie e inicie o contêiner c1 c2, use o parâmetro --- volumes-from para definir o volume de dados
docker run –it --name=c1 --volumes-from c3 centos:7 /bin/bash
docker run –it --name=c2 --volumes-from c3 centos:7 /bin/bash
resumo
Conceito de volume de dados
Um diretório ou arquivo no host
Função de volume de dados
Persistência de dados do contêiner
Troca de dados de cliente e contêiner
Troca de dados entre contêineres
Recipiente de volume de dados
Crie um contêiner, monte um diretório e deixe que outros contêineres herdem desse contêiner (--volume-from).
Realize a configuração do volume de dados de maneira simples
Nota
1. O conteúdo do volume de dados muda. O conteúdo do contêiner também muda
. 2. O conteúdo do contêiner muda . O conteúdo do volume de dados também muda
. 3. Um contêiner é montado em um volume de dados que já tem conteúdo. Existe o conteúdo do volume de dados
4. O conteúdo do contêiner é consistente com o conteúdo do volume de dados
5. O volume de dados não será excluído se o contêiner for excluído