gcloud compute Ausführungsbefehl remote

8

Wenn ich etwas auf einer VM ausführen möchte, kopiere ich Dateien wie folgt:

%Vor%

Dann muss ich manuell wie folgt in SSH:

%Vor%

Und dann geh und führe einen Befehl aus:

%Vor%

Wie kombiniere ich Schritt 2 und 3 zusammen und führe einen Befehl aus der Ferne aus?

Hinweis: Ich möchte gcloud oder die Python-API verwenden. Ich möchte keine 3rd-Party-Pakete wie Fabric verwenden.

    
Roman 23.08.2016, 10:13
quelle

3 Antworten

15

Versuchen Sie:

%Vor%

Von gcloud compute ssh --help :

%Vor%     
Zachary Newman 23.08.2016, 15:10
quelle
8

Ein gcloud-Update, das vor einer Woche gelandet ist, blockierte ssh-Befehle nach '-' und erzwingt effektiv die Verwendung von --command -Option dafür. In diesem Fall verwenden Sie:

gcloud compute ssh --zone ZONE INSTANCE --command 'cd /tmp && python some.py' .

    
Doru C. 10.05.2017 19:06
quelle
2

Hat es mit einer kleinen Tangens gemacht; Verwenden des normalen SSH-Clients anstelle von gcloud compute :

%Vor%

Der gcloud ssh-Schlüssel befindet sich unter ~/.ssh/google_compute_engine und wird verwendet. Es erfordert auch die externe IP-Adresse der Instanz anstelle des Namens.

    
Roman 23.08.2016 11:07
quelle