Soy nuevo en Docker e intento seguir este tutorial para configurar MemSQL desde una imagen de Docker: http://docs.memsql.com/4.0/setup/docker/ . Estoy en una Mac, y los usos del tutorial boot2docker
parecen haber quedado obsoletos.
La máquina virtual necesita 4 GB de memoria para funcionar. El tutorial especifica cómo hacer esto, boot2docker
pero no puedo encontrar una manera de hacerlo con la caja de herramientas docker-machine / docker.
Aquí está el comando que estoy usando y el error que obtengo al intentar seguir el tutorial sin alterar la configuración de boot2docker.
docker run --rm --net=host memsql/quickstart check-system
Error: MemSQL requires at least 4 GB of memory to run.
macos
docker
virtualbox
docker-machine
memsql
DJ Elbow
fuente
fuente
check-system
programa ( github.com/memsql/memsql-docker-quickstart/blob/master/… ), veo estas líneas que determinarían este error.ONE_MB = 1024 ** 2
,virtual_memory = psutil.virtual_memory()
,if virtual_memory.total < ONE_MB * 3700: sys.stderr.write("Error: MemSQL requires at least 4 GB of memory to run.\n")
.Puede hacerlo a través de la línea de comandos. Por ejemplo, para cambiar la máquina de la 1cpu / 2048MB RAM predeterminada, ejecute:
Luego puede verificar su configuración:
Y para
docker-machine inspect
informar el estado correcto de las cosas, edite~/.docker/machine/machines/default/config.json
para reflejar sus cambios.fuente
docker-machine inspect
no mostrará ningún cambio. Sin embargo, si ejecutadocker stats
, verá que se han aplicado los cambios.config.json
archivo de la máquina acoplable para reflejar el tamaño real. Ejemplo: paradefault
, como se usa en la solución de ejemplo, modifique el~/.docker/machine/machines/default/config.json
archivo de modo que la subpropiedadMemory
(yCPU
si también se modificó) bajoDriver
se cambie a4096
. Luego,docker-machine inspect
mostrará el valor adecuado.Para la versión 1.12.1 de Docker (compilación: 12133) y superior en macOS, existe una opción para cambiar la CPU y la RAM desde la interfaz de usuario y reiniciar la ventana acoplable. Puede encontrar las preferencias en la barra de herramientas. Adjuntar imágenes para mayor claridad.
Actualización: agosto de 2020: Preferencias -> Recursos (gracias a @ swedge218)
Paso anterior (probablemente desaparecido ahora): Preferencias -> Avanzado -> ajustar recursos -> Aplicar y reiniciar
fuente
Mantenedor de Docker Machine aquí. No creo que el ajuste
config.json
manual funcione.Sus dos opciones son crear la máquina con el
--virtualbox-memory
conjunto o ajustar la memoria de la VM en la GUI de VirtualBox ("Configuración> Sistema" para esa VM, creo). Asegúrese de que la máquina esté apagada y debe haber un pequeño control deslizante que funcione.EDITAR: Otra respuesta muestra que también puede hacer la operación en el lugar desde la línea de comando usando
VBoxManage
.fuente
docker-machine inspect
continuará informando la cantidad original de memoria incluso después de alterarla en la GUI de VirtualBox.docker-machine inspect
reportar la cantidad exacta, que haga tiene que editarconfig.json
(que es dondeinspect
obtiene su información).No pude hacer que las otras respuestas funcionen. Lo único que funcionó para mí fue eliminar la máquina predeterminada y volver a crearla con más memoria.
Esta solución se encontró aquí: https://www.ibm.com/developerworks/community/blogs/jfp/entry/Using_Docker_Machine_On_Windows?lang=en
fuente
Otras respuestas mostraron cómo cambiar la memoria usando VBoxManage:
Para confirmar el cambio desde la línea de comando:
O
fuente
fox xhyve (otra virtualización bajo macos) puede modificar la propiedad ~ / .docker / machine / default / config.json Driver / Memory (predeterminado a 1024) y luego reiniciar la máquina docker para aplicar los cambios
fuente
~/.docker/machine/machines/default/config.json
. Gracias 👍