
Intento ejecutar lo siguienteguionpero dockerd
no se reconoce en mi estación de trabajo.
Mi sistema operativo es Windows 10. Acabo de instalar la última versión de Docker que es 18.09.2.
Es mi primera vez con Docker.
Respuesta1
Esta respuesta es más una adición enLa respuesta de Jean-François Beauchamp:
Puede encontrar documentación completa sobre este archivo de configuración endocumentación de Docker.
Se afirma:
--data-root
es la ruta donde se almacenan los datos persistentes, como imágenes, volúmenes y estado del clúster.
y
--exec-root
es la ruta donde se almacena el estado del contenedor. El valor predeterminado es /var/run/docker. Especifique aquí la ruta de su demonio en ejecución.
Entonces, si desea mover tanto sus contenedores como sus imágenes (y otras cosas), debe configurar ambos parámetros.
También puede crear un enlace simple donde Docker espera que su carpeta redirija al lugar deseado.
se describeaquíy conducir al mismo resultado. Parece "sucio" pero al final parece más estable que la primera solución.
Trabajar con el motor WSL 2 (para Windows Home y Family Edition)
"D:\\Docker\\data-root"
valor comosugerido por miguelbloqueará Docker porque tiene que ser una carpeta WSL.
Sin embargo, Docker crea una distribución WSL específica que contiene sus datos de Docker.y puedes moverlo. Esto no requiere modificar los parámetros de Dockerd.
Para mover la distribución WSL de Docker
wsl --export docker-desktop-data docker-desktop-data.tar
wsl --unregister docker-desktop-data
wsl --import docker-desktop-data X:\wslStore\ docker-desktop-data.tar --version 2
El X:\wslStore
parámetro es la ruta donde deseas "montar" tu Distro, algo así comoD:\Docker\data-root
Respuesta2
En Docker v19.03.8 para Windows, agregué el graph
parámetro a mi configuración y funcionó para mí, pero aparentemente, este parámetro está en desuso y ahora deberíamos usarlo data-root
en su lugar. El valor predeterminado para data-root
es c:\programdata\docker
. Tenga en cuenta que en el archivo de configuración JSON se deben aplicar caracteres de escape a las barras invertidas.
Respuesta3
Encuentra otra manera de hacerlo segúnestecorreo.
Para contenedores Unix, la ruta de las imágenes se puede cambiar mediante la interfaz de Docker Desktop, en el formulario de configuración. Pero si utiliza la función de contenedores de Windows, se instala un segundo servicio, el "Docker Engine". Para cambiar la carpeta de imágenes para este servicio, siga los siguientes pasos:
- Obtenga la ruta al archivo de configuración. Vaya a Herramientas administrativas->Servicios. Verifique la línea de comando de Docker Demon para ver el servicio "Dock Engine"
La línea de comando es algo así como
"C:\Program Files\Docker\Docker\Resources\dockerd.exe" --run-service --service-name docker -G myPc" --config-file C:\ProgramData\DockerDesktop\tmp-d4w\daemon. json
- Edite el archivo de configuración
daemon.json
y agregue la propiedad raíz de datos. El valor de la propiedad debe apuntar a la ubicación deseada. Debería verse algo como esto. Controlarestepara obtener información sobre la estructura json.
{
"registry-mirrors": [],
"insecure-registries": [],
"debug": true,
"experimental": false,
"hosts": [
"npipe:////./pipe/docker_engine_windows"
],
"data-root":"D:\\Docker\\data-root"
}
Si es necesario, otorgue permisos para que la cuenta en ejecución acceda a la carpeta.
- reiniciar el servicio. Si no arranca, comprueba
eventlog
posibles errores.
Los datos configurados previamente en c:\ProgramData\Docker se perderán cuando cambie la ubicación de instalación. Es como una nueva instalación en una nueva ubicación. (imágenes, contenedores, etc). Todas las subcarpetas se crearán nuevamente.
Para mantener el mínimo en la unidad del sistema, haga esto en una instalación nueva.
No estoy 100% seguro acerca de esta solución, pero hasta ahora, Docker funciona bien y la ocupación de la unidad del sistema es escasa.