Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

577
Views
El inicio de sesión de Docker falla en un servidor sin X11 instalado

Estoy tratando de implementar una configuración de ventana acoplable con imágenes en un registro de ventana acoplable privado.

Ahora, cada vez que ejecuto docker login registry.example.com , aparece el siguiente mensaje de error:

error al obtener las credenciales - error: estado de salida 1, salida: Cannot autolaunch D-Bus without X11 $DISPLAY

La única solución que encontré para usuarios que no son de MacOS fue ejecutar export $(dbus-launch) primero, pero eso no cambió nada.

Estoy ejecutando Ubuntu Server y probé con el paquete Ubuntu Docker y el paquete Docker-CE.

¿Cómo puedo iniciar sesión sin una sesión X11?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Parece que esto se debe a que por defecto usa el ejecutable secretservice que parece tener algún tipo de dependencia de X11 por alguna razón. Si instala y configura pass Docker, lo usará en su lugar, lo que parece resolver el problema.

En pocas palabras (de https://github.com/docker/compose/issues/6023 )

 sudo apt install gnupg2 pass gpg2 --full-generate-key

Esto genera una clave gpg2. Una vez hecho esto, puede enumerarlo con

 gpg2 -k

Copie la identificación de la clave (de la línea etiquetada [uid] ) y haga

 pass init "whatever key id you have"

Ahora docker login debería funcionar.

Hay un par de errores registrados en el Launchpad con respecto a esto:

https://bugs.launchpad.net/ubuntu/+source/golang-github-docker-docker-credential-helpers/+bug/1794307

https://bugs.launchpad.net/ubuntu/+source/docker-compose/+bug/1796119

over 4 years ago · Santiago Trujillo Report

0

Esto funciona: sudo apt remove golang-docker-credential-helpers

over 4 years ago · Santiago Trujillo Report

0

secretservice requiere una GUI. Puede usar pass sin una GUI.

Desafortunadamente, falta bastante documentación de Docker sobre cómo configurar Docker Credential Helpers . Aquí hay una guía completa sobre cómo configurar pass con Docker (probado con Ubuntu 18.04):

1. Instale Docker Credential Helper para pass

  • Busque la URL de la última versión de docker-credential-pass en https://github.com/docker/docker-credential-helpers/releases . Por ejemplo:
 # substitute with the latest version url=https://github.com/docker/docker-credential-helpers/releases/download/v0.6.2/docker-credential-pass-v0.6.2-amd64.tar.gz # download and untar the binary wget $url tar -xzvf $(basename $url) # move the binary to a dir in your $PATH sudo mv docker-credential-pass /usr/local/bin # verify it works docker-credential-pass list

2. pass de instalación y configuración

 apt install pass # create a gpg2 key gpg2 --gen-key # if you have issues with lack of entropy, "apt install haveged" and try again # create the password store using the gpg user id above pass init $gpg_id

3. inicio de sesión de la ventana acoplable

 docker login # You should not see any credentials stored in "auths" section. # "credsStore": "pass" should have been automatically added. # If the value is "secretservice", replace it with "pass". cat ~/.docker/config.json # verify credentials stored in `pass` store now pass
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!