Diretório de artigos
Prefácio: Existem duas maneiras principais de gerenciar dados em contêineres do Docker: Data Volumes e DataVolumes
Containers.
1. volume de dados
Um volume de dados é um diretório especial usado por um contêiner, localizado dentro do contêiner. O diretório do host pode ser montado no volume de dados, e a operação de modificação do volume de dados pode ser vista imediatamente, e os dados atualizados não afetarão a imagem, realizando assim a migração de dados entre o host e o container. O uso de volumes de dados é semelhante à operação de montagem para diretórios no Linux.
Exemplo: Monte o diretório do host /var/www em /data1 e /data2 nos contêineres c1 e c2, respectivamente
(1) Crie dois contêineres e especifique o ponto de montagem
docker run -itd -v /var/www:/data1 --name c1 centos:7 bash
docker run -itd -v /var/www:/data2 --name c2 centos:7 bash
(2) Gravar dados no diretório do host
echo "this is test fuck web" > index.html
(3) Abra dois outros terminais, faça login no contêiner c1 c2 respectivamente e visualize os arquivos no diretório do ponto de montagem
Enquanto a montagem for bem sucedida, ela também pode obter compartilhamento de arquivos.Por exemplo, se eu criar um arquivo no terminal c2, ele também poderá ser visto no host c1.
2. Contêiner de volume de dados
Se você precisar compartilhar alguns dados entre contêineres, a maneira mais fácil é usar contêineres de volume de dados. Um contêiner de volume de dados é um contêiner comum que fornece volumes de dados para outros contêineres montarem e usarem.
(1) Primeiro, crie um contêiner de volume de dados
docker run -itd --name v1 -v /data1 -v /data2 centos:7 bash
#有data1 data2 两个挂载点目录
(2) Crie outro contêiner e monte-o no contêiner de volume de dados
docker run -itd --name v2 --volumes-from v1 centos:7 bash
(3) Abra dois outros terminais para fazer login no contêiner v1 v2 respectivamente e veja o ponto de montagem