Docker Fehlermeldung?
Nabend,
ich möchte sozusagen als Client auf einen Containerzugreifen der dann als Server fungieren soll. Den Container hab ich so erstellt:
docker run -e MYSQL_ROOT_PASSWORD=rootpw -d --name mysqlserver1 --publish 3306:3306 mysql
Der Port 3306 wurde auf den Port 3306 gemappt. Das Image hat den Namen mysql erhalten. Das Mapping funktioniert auch. Dies habe ich mit
Docker ps
überprüft.
Ich will mich sozusagen als Client auf den Servercontainer einloggen. Das mache ich folgendermaßen:
PS C:\> mysql -h 127.0.0.1 -P 3306 -u root -p
Führe ich das aus, bekomme ich folgende Fehlermeldung:
mysql : Die Benennung "mysql" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt.
Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und wiederholen Sie den Vorgang.
In Zeile:1 Zeichen:1
Offenbar stört er sich an dem Imagenamen. Gebe ich die Container ID an oder den Namen, funktioniert ebenfalls nicht.
Ich habe natürlich gegoogelt, aber es stellte sich als Unwahrheit heraus :)
Danke im Voraus
2 Antworten
Offenbar stört er sich an dem Imagenamen.
Du willst doch einfach nur das Kommando "mysql" ausführen, und die Windows-Shell sagt dass sie das nicht kennt. Wo ist hier der Zusammenhang mit dem Imagenamen?
Hast du überhaupt den MySQL-Client installiert?
Mysql hast du im docker container laufen oder?
Du musst zu erst in die shell vom docker container reingehen, damit du zugriff auf die commands hast, da jeder container im grunde eine sandbox ist.
https://phase2.github.io/devtools/common-tasks/ssh-into-a-container/
exakt :) Ich will von außen darauf zugreifen.
Ich möchte mich sozusagen von außen mit Container verbinden. So wie oben beschrieben.
Dann brauchst du eben im Host den Mysql-Client. Dem MySQL ist es dann egal, was hier in einem Container oder lokal oder auf einem Server in Neuseeland läuft, das will nur wissen wo es seinen TCP-Socket hinverbinden soll.
Soweit ich verstehe will der FS "von außen" (also vom Docker Host) mit dem Container verbinden.