Al iniciar una aplicación de composición de Docker, crea un volumen con nombre la primera vez y luego volúmenes adicionales cada vez que se inicia. ¿Es este el comportamiento normal en el sentido de que crea volúmenes incrementales o mi archivo de compilación acoplable está roto? Además, después de ejecutar docker volume prune
, eliminó dos de los volúmenes sin nombre
Este es el resultado después de iniciarlo dos veces:
DRIVER VOLUME NAME
local 2b33c81e6e955ff36061f4120b7181c7efc7aebded2f87eaa7290027f1e7a725
local 74301eadc75018d6f7da76aec44bcf743e03261492cfcc33211941684a570030
local c42b1e2c17342c52b4b9e90f4d4b7fa24ccb30de5479e65cf4366e2373dfb0bf
local dcfa63dbf99362fc92fe3b981f50abebfe1bba03063d4dd9dd790f4c058817cf
local dockerinfluxdbgrafana_grafana-data
local dockerinfluxdbgrafana_influxdb-data
Y para referencia mi archivo docker-compose
version: "3"
services:
influxdb:
image: influxdb:latest
container_name: influxdb
ports:
- "8086:8086"
env_file:
- 'env.influxdb'
networks:
- backend
volumes:
- influxdb-data:/var/lib/influxdb
grafana:
image: grafana/grafana:latest
container_name: grafana
ports:
- "3000:3000"
env_file:
- 'env.grafana'
- 'secrets.grafana'
networks:
- backend
volumes:
- grafana-data:/var/lib/grafana
networks:
backend:
volumes:
influxdb-data:
grafana-data:
pasos para reproducir
docker-compose up -d && docker-compose down && docker-compose up -d && docker-compose down && docker-compose up -d && docker-compose down
docker
docker-compose
Moritz
fuente
fuente
docker-compose up -d && docker-compose down && docker-compose up -d && docker-compose down && docker-compose up -d && docker-compose down
Respuestas:
La investigación indicó que los volúmenes anónimos fueron creados por
influxdb
ygrafana/grafana
.Resultados
resultados en:
y cada vez que se ejecuta
docker-compose down
y posteriormenteup
se duplica el número de volúmenes anónimos.¿Qué sucederá si se extrae nginx en lugar de influxdb y grafana?
y despues
docker-compose down && docker-compose up -d
?Parece que ciertas imágenes crearon los volúmenes anónimos adicionales. Reemplacemos influxdb con nginx y usemos grafana.
Cada vez que se ejecuta Docker compose nuevamente, la
grafana/grafana
imagen de Docker crea tres volúmenes anónimos . Reemplacemos influxdb con nginx y revertamos el grafana a nginx:y sigue siendo dos si se reinicia.
Parece que la grafana está causando el problema.
¿Por qué se crean tres nuevos volúmenes anónimos cada vez que se reinicia grafana / grafana?
El archivo grafana / grafana dockerfile indica que se crearán tres volúmenes anónimos:
https://docs.docker.com/engine/reference/builder/#volume
docker volume inspect <volume name, e.g. 34cfafd4603dbc7e71a83e2520f978c8307b084143b3192de65a1995dc1d2f86>
datos grafana devueltos cuando la ruta que se devolvió se verificó en dos de los tres volúmenes anónimos:y
fuente
Verifique los volúmenes definidos en el
Dockerfile
con laVOLUME
instrucción.Si no desea que se cree automáticamente un volumen con nombres aleatorios, puede proporcionar una ruta de host para que se monte en el volumen, verifique las opciones
-v
u--mount
, https://docs.docker.com/engine/admin/volumes / volume / # choose-the - v-or-mount-flagPor ejemplo:
fuente
Si alguien más va por este agujero de conejo. Asegúrese de que usted no ha definido su volumen de forma accidental con una
=
en suDockerfile
Incorrecto:
Correcto:
Me llevó mucho tiempo investigar por qué los volúmenes anónimos fueron agregados por
docker-compose
fuente