Ich bin neu in Docker und versuche, dieses Tutorial zum Einrichten von MemSQL über ein Docker-Image durchzugehen - http://docs.memsql.com/4.0/setup/docker/ . Ich bin auf einem Mac und das Tutorial verwendet, boot2docker
was veraltet zu sein scheint.
Die VM benötigt 4 GB Speicher, um ausgeführt zu werden. Das Tutorial gibt an, wie das geht, boot2docker
aber ich kann mit der Docker-Maschine / Docker-Toolbox keinen Weg finden, dies zu tun.
Hier ist der Befehl, den ich verwende, und der Fehler, den ich erhalte, wenn ich nur versuche, das Tutorial durchzugehen, ohne die boot2docker-Konfiguration zu ändern.
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
DJElbow
quelle
quelle
check-system
Programm ( github.com/memsql/memsql-docker-quickstart/blob/master/… ) sehe ich diese Zeilen, die diesen Fehler bestimmen würden.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")
.Sie können dies über die Befehlszeile tun. So ändern Sie beispielsweise den Computer vom Standardlauf mit 1 CPU / 2048 MB RAM:
Sie können dann Ihre Einstellungen überprüfen:
Und für
docker-machine inspect
den richtigen Stand der Dinge zu berichten, zu bearbeiten ,~/.docker/machine/machines/default/config.json
um die Änderungen zu reflektieren.quelle
docker-machine inspect
keine Änderungen angezeigt werden. Wenn Sie jedoch ausführen, werdendocker stats
Sie feststellen, dass die Änderungen übernommen wurden.config.json
, dass sie der tatsächlichen Größe entspricht. Beispiel:default
Ändern Sie für , wie in der Beispiellösung verwendet, die~/.docker/machine/machines/default/config.json
Datei so, dass dieMemory
(undCPU
falls auch geänderte) Untereigenschaft unterDriver
in geändert wird4096
. Danndocker-machine inspect
wird der richtige Wert angezeigt.Für Docker Version 1.12.1 (Build: 12133) und höher unter MacOS besteht die Möglichkeit, CPUs und RAM über die Benutzeroberfläche zu ändern und Docker neu zu starten. Sie finden die Einstellungen in der Symbolleiste. Anhängen von Bildern zur besseren Übersicht.
Schritte: Einstellungen -> Erweitert -> Ressourcen anpassen -> Übernehmen und neu starten
quelle
Docker Machine Maintainer hier. Ich denke nicht, das anzupassen
config.json
manuelle funktionieren wird.Sie haben zwei Möglichkeiten, entweder die Maschine mit zu erstellen
--virtualbox-memory
Set oder den Speicher der VM in der VirtualBox-GUI anzupassen ("Einstellungen> System" für diese VM, glaube ich). Stellen Sie sicher, dass die Maschine ausgeschaltet ist und ein kleiner Schieberegler vorhanden sein sollte.BEARBEITEN: Eine andere Antwort zeigt, dass Sie die In-Place-Operation auch über die Befehlszeile ausführen können
VBoxManage
.quelle
docker-machine inspect
die ursprüngliche Speichermenge auch nach einer Änderung in der VirtualBox-GUI weiterhin angezeigt wird.docker-machine inspect
den genauen Betrag melden zu können, müssen Sie ihn bearbeitenconfig.json
(dort erhalten Sieinspect
seine Informationen).Ich konnte die anderen Antworten nicht zum Laufen bringen. Das einzige, was für mich funktioniert hat, war, den Standardcomputer zu entfernen und ihn mit mehr Speicher neu zu erstellen.
Dieser Fix wurde hier gefunden: https://www.ibm.com/developerworks/community/blogs/jfp/entry/Using_Docker_Machine_On_Windows?lang=de
quelle
Andere Antworten zeigten, wie der Speicher mit VBoxManage geändert werden kann:
So bestätigen Sie die Änderung über die Befehlszeile:
ODER
quelle
fox xhyve (eine weitere Virtualisierung unter macos) Sie können die Eigenschaft ~ / .docker / machine / default / config.json Driver / Memory (standardmäßig 1024) ändern und dann die Docker-Maschine neu starten, um Änderungen zu übernehmen
quelle
~/.docker/machine/machines/default/config.json
. Danke 👍