Docker-Maschine Version 0.2.0 Docker-Version 1.6.2
Ich benutze Docker-Maschine, um eine Maschine mit VirtualBox zu erstellen . Alles funktioniert gut, aber ich möchte in die Maschine selbst ssh und ich finde keine Anweisungen, wie das geht. Ich kann mich mit dem SSH-Port verbinden:
ssh $(docker-machine ip dev)
Aber ich habe keine Ahnung, welchen Benutzernamen / Passwort / Identitätsdatei ich verwenden soll.
docker
docker-machine
Roy Truelove
quelle
quelle
docker exec -it my_container /bin/bash
Sie im Dokument docs.docker.com/reference/commandline/cli/#execAntworten:
Sie können sich bei Docker-Computer-Hosts anmelden, indem Sie einfach ausführen
(Verwenden Sie hier den "Standard" -Host)
Die Identitätsdateien sollten unter gespeichert werden
~/.docker/machine/machines
. Wenn Sie sich bei einem Container anmelden möchten (im Gegensatz zum Host), verwenden Sie ihndocker exec
wie von user2915097 vorgeschlagen.quelle
Wenn Sie es wirklich über tun müssen, funktioniert
ssh
dies mit Docker 1.8.2Init Docker:
Holen Sie sich die IP von Ihrem Standard-Docker-Computer:
das druckt so etwas aus:
192.168.99.100
Passwort ist
tcuser
aber Sie können auch die Identitätsdatei verwenden, siehe andere Antwortquelle
tcuser
. Würden Sie bitte Ihr Geheimnis preisgeben? :-)Schließlich fand ich eine Antwort:
Ich bin unter Windows mit Docker Toolbox (Docker Machine).
Wenn ich
docker-machine -D ssh default
, finde ich, dass die SSH-Parameter sein sollten:Host: localhost
Port: 51701
Benutzer: Docker
Schlüssel: .docker \ machine \ machine \ default \ id_rsa
Wenn ich meine Putty / MobaXterm-Einstellungen passend ändere, voila, kann ich SSH in den Container.
quelle
Using SSH client type: external {[-o BatchMode=yes -o PasswordAuthentication=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -o LogLevel=quiet -o ConnectionAttempts=3 -o ConnectTimeout=10 -o ControlMaster=no -o ControlPath=none [email protected] -o IdentitiesOnly=yes -i C:\Users\<user>\.docker\machine\machines\default\id_rsa -p 58361] C:\Program Files\Git\usr\bin\ssh.exe}
docker-machine inspect
? Es druckte nicht lokale Adresse inDriver->IPAddress
VariableFür die Hacker da draußen gibt es hier ein Skript, das in die 'aktive' Docker-Maschine ssh wird. Auf diese Weise erhalten Sie auch die Werte für ssh_key, ssh_port und ssh_user, sodass Sie beispielsweise
rsync
zwischen dem lokalen Host und der VM arbeiten können.Sie können das Zeile für Zeile kopieren und in Ihr Terminal einfügen, und es wird funktionieren. Oder machen Sie das Skript zu einer Funktion und geben Sie ihm den Namen als Argument.
quelle
Wenn Sie aus irgendeinem Grund lieber den
ssh
Befehl als verwendendocker-machine ssh
möchten, können Sie dies tunquelle
Bei Mac OX befinden sich das Gerät und seine Schlüssel hier (stellen Sie sicher, dass Sie die Schlüssel dort haben, etwa wie folgt:
1) Liste der verfügbaren VMS.
In meinem Fall ist der Name des Computers Standard. Also nur
Wie Sie sehen können, kann ich in Docker-Maschine / Instanz ssh.
Sie können auch diesem> Howto-Docker folgen
quelle
Wir können auch über den folgenden Befehl in den Docker ssh -
Docker exec -it / bin / sh
quelle