2017-07-10 5 views
0

Ich versuche Docker API Python-Bibliothek, konnte aber nicht ein wenig Erfolg haben, haben durch die docs.Activ ich versuche, mich an Docker mit API anmelden.Setup-Login über Docker-API in Python

Hier ist meine Python-Code:

import docker 

config = os.path.join(BASE_DIR, 'IGui') + 'config.json' 
client = docker.APIClient.login('username', '*******', '[email protected]','https://index.docker.io/v1/', config) 

Hier ist der Fehler, den ich erhielt:

AttributeError at /gui/docker/ 
'str' object has no attribute '_auth_configs' 
Request Method: POST 
Request URL: http://127.0.0.1:8000/gui/docker/ 
Django Version: 1.11.3 
Exception Type: AttributeError 
Exception Value:  
'str' object has no attribute '_auth_configs' 
Exception Location: /Users/abdul/IstioVirEnv/lib/python3.6/site-  packages/docker/api/daemon.py in login, line 128 
Python Executable: /Users/abdul/IstioVirEnv/bin/python 
Python Version: 3.6.1 

wie kann ich Setup Docker Login über API in Python? Hilf mir bitte!

Antwort

0

Ich nehme an, dies ist der Befehl, den Sie versuchen, auszuführen: http://docker-py.readthedocs.io/en/stable/client.html#docker.client.DockerClient.login

Aus den Dokumenten, sehe ich die Parameter, die Sie passieren sind:

  • username = ‚username‘
  • password = ' ********‘
  • email = '[email protected]'
  • registry = 'https://index.docker.io/v1/'
  • reauth = config < - was ist ein String, vielleicht ist das das Problem?
  • dockercfg_path
  • nicht gegeben =

Ich bin nicht sicher, könnte es sein, Sie verwenden eine ältere/neuere Version des Moduls. Verwenden Sie Schlüsselwortargumente. Das könnte helfen, es einzugrenzen.

+0

Ich bin verwirrt über Reauth & Dockercfg Argumente, gibt es ein Beispiel, wie Sie die Anmeldung mit Docker API in Python zu erreichen? –

+0

'reauth' ist ein boolescher Wert. dockerdfg_path ist eine Zeichenfolge. Da Sie eine Zeichenfolge übergeben haben, nehme ich an, dass Sie versuchen, dockercfg_path zu übergeben. Aber das 4. Positionsargument soll "reauth" (ein Boolescher Wert) sein. Das könnte das Problem sein. – DroidX86

+0

wenn ich '' False '' für ** reauth ** übergebe es immer noch durch denselben Fehler wie: ''str' Objekt hat kein Attribut '_auth_configs'' –