Modificar la ubicación de almacenamiento de datos en tiempo de ejecución de Docker

Los datos de tiempo de ejecución de Docker, incluidas imágenes, contenedores, redes y volúmenes de almacenamiento, se almacenan en el directorio /var/lib/docker de forma predeterminada. Si la capacidad del disco duro es limitada, debemos modificar esta ubicación de almacenamiento.

Los pasos de modificación son los siguientes:

  1. Detenga el servicio Docker:sudo systemctl stop docker

  2. Cree un nuevo directorio para almacenar datos del tiempo de ejecución de Docker:sudo mkdir /new/docker/image/path

  3. Copie el directorio de datos de tiempo de ejecución predeterminado de Docker al nuevo directorio:sudo rsync -axPS /var/lib/docker/ /new/docker/image/path

  4. Abra el archivo de configuración de Docker:sudo vim /etc/docker/daemon.json

  5. Agregue lo siguiente al archivo:

{
  "graph": "/new/docker/image/path"  // docker版本不同可能 "graph"应该替换为"data-root"
}
  1. Guarde y cierre el archivo.

  2. Inicie el servicio Docker:sudo systemctl start docker

  3. eliminar el directorio original

El directorio /var/lib/docker contiene los siguientes subdirectorios:

  1. contenedores: almacena metadatos e información de estado de los contenedores.
  2. imagen: almacena los metadatos y datos de capa de la imagen.
  3. red: almacena metadatos e información de estado de la red Docker.
  4. complementos: almacena los datos de los complementos de Docker.
  5. swarm: almacena metadatos e información de estado del clúster Swarm.
  6. tmp: almacena archivos temporales cuando se ejecuta Docker.
  7. confianza: almacena firmas de imágenes de Docker y datos de confianza.
  8. volúmenes: almacena datos de volúmenes Docker.

Explicación del comando rsync -axPS:
se utiliza para sincronizar archivos y directorios de una ubicación a otra. Sus opciones tienen los siguientes significados:

  • -a: modo de archivo, conserva todos los atributos del archivo, incluidos permisos, propietario, grupo, marca de tiempo, etc.
  • -x: no cruza los límites del sistema de archivos, evitando cruzar diferentes sistemas de archivos durante la sincronización.
  • -P: Muestra el progreso y continúa la transferencia. Si la transferencia se interrumpe, la siguiente transferencia puede continuar desde donde se interrumpió.
  • -S: mantiene archivos dispersos, es decir, solo se transferirán los bloques de datos que realmente existen en el archivo.

Este comando se usa generalmente para realizar copias de seguridad y sincronizar archivos y directorios, y puede sincronizar archivos entre hosts locales o remotos.

Supongo que te gusta

Origin blog.csdn.net/huhuhutony/article/details/132699146
Recomendado
Clasificación