¿Cómo verificar el estado de inicio de sesión de Docker usando el comando info?

DockerBeginner
Practicar Ahora

Introducción

Docker es una plataforma de containerización (containerization) potente que permite empaquetar y ejecutar aplicaciones en entornos aislados. Al trabajar con Docker, a menudo es necesario interactuar con registros de contenedores (container registries), lo cual requiere autenticación. Conocer su estado de inicio de sesión actual es esencial para gestionar su flujo de trabajo de Docker de manera eficiente.

En este laboratorio, aprenderá a verificar su estado de inicio de sesión de Docker utilizando el comando docker info. Esta habilidad es fundamental para los usuarios de Docker, ya que ayuda a asegurar que tiene el acceso adecuado para extraer (pull) y enviar (push) imágenes desde registros privados.

Verificar la Instalación de Docker

Antes de verificar el estado de inicio de sesión, primero verifiquemos que Docker esté correctamente instalado y en ejecución en nuestro sistema. Este paso asegura que tenemos un entorno de Docker funcional para las operaciones subsiguientes.

Verificación del Estado de Docker

Abra una terminal en el entorno de LabEx. Puede hacerlo haciendo clic en el icono de la terminal en el entorno de escritorio.

Una vez que la terminal esté abierta, ejecute el siguiente comando para verificar si Docker está instalado y en ejecución:

docker --version

Este comando debería mostrar la versión de Docker instalada en su sistema. Debería ver una salida similar a esta:

Docker version 20.10.21, build 20.10.21-0ubuntu1~22.04.3

A continuación, verifiquemos si el demonio de Docker (Docker daemon) se está ejecutando correctamente. Ejecute el siguiente comando:

docker run hello-world

Si Docker funciona correctamente, descargará una imagen de prueba y la ejecutará en un contenedor. Debería ver una salida que incluya:

Hello from Docker!
This message shows that your installation appears to be working correctly.
...

Esto confirma que Docker está correctamente instalado y en ejecución en su sistema. Si encuentra algún error, verifique si el servicio de Docker se está ejecutando con:

sudo systemctl status docker

La salida debería mostrar que el servicio de Docker está activo (en ejecución).

Ahora que hemos confirmado que Docker funciona correctamente, podemos proceder a aprender sobre el comando docker info en el siguiente paso.

Entendiendo el Comando Docker Info

En este paso, exploraremos el comando docker info y entenderemos cómo proporciona información valiosa sobre su entorno de Docker.

Ejecutando el Comando Docker Info

El comando docker info proporciona una visión general completa de su instalación de Docker. Muestra información a nivel de sistema, como el número de contenedores e imágenes, la versión del servidor, el controlador de almacenamiento y mucho más.

Ejecutemos el comando docker info en la terminal:

docker info

Debería ver una salida detallada con varias secciones. La salida será similar a esta:

Client:
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.9.1
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
  ...

Server:
 Containers: 1
  Running: 0
  Paused: 0
  Stopped: 1
 Images: 1
 Server Version: 20.10.21
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
  userxattr: false
 ...

 Registry: https://index.docker.io/v1/
 ...

La salida contiene varias secciones con información tanto sobre el cliente de Docker como sobre el servidor de Docker.

Secciones Clave en la Salida de Docker Info

Entendamos algunas secciones clave de la salida de docker info:

  1. Client (Cliente): Información sobre la configuración del cliente de Docker.
  2. Server (Servidor): Información sobre el servidor de Docker (demonio).
  3. Containers (Contenedores): El número de contenedores en su sistema, incluyendo contenedores en ejecución, pausados y detenidos.
  4. Images (Imágenes): El número de imágenes de Docker en su sistema.
  5. Server Version (Versión del Servidor): La versión del servidor de Docker.
  6. Storage Driver (Controlador de Almacenamiento): El controlador de almacenamiento utilizado por Docker.
  7. Registry (Registro): Información sobre los registros de Docker configurados.

Para verificar el estado de inicio de sesión, estamos particularmente interesados en la sección Registry, que exploraremos en el siguiente paso.

Verificando el Estado de Inicio de Sesión de Docker

Ahora que entendemos el comando docker info, centrémonos en cómo usarlo para verificar nuestro estado de inicio de sesión de Docker.

Interpretando el Estado de Inicio de Sesión en Docker Info

Cuando ejecuta el comando docker info, la salida contiene información sobre su estado de inicio de sesión en Docker Hub. Específicamente, debe buscar la sección Registry (Registro).

Ejecute el comando de nuevo:

docker info

Ahora, busque la sección Registry en la salida.

Si no ha iniciado sesión en ningún registro de Docker, la salida simplemente mostrará la URL del registro predeterminado:

Registry: https://index.docker.io/v1/

Si ha iniciado sesión, verá información adicional, incluido su nombre de usuario:

Registry: https://index.docker.io/v1/
Username: yourusername

Actualmente, es muy probable que no haya iniciado sesión en Docker Hub ni en ningún otro registro.

Iniciando Sesión en Docker Hub

Intentemos iniciar sesión en Docker Hub para ver cómo cambia la información del estado de inicio de sesión. Para iniciar sesión en Docker Hub, use el comando docker login:

docker login

Este comando le pedirá su nombre de usuario y contraseña de Docker Hub:

Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
Username:
Password:

Para el propósito de este laboratorio, no necesita ingresar credenciales reales. En su lugar, presione Ctrl+C para cancelar el proceso de inicio de sesión.

Método Alternativo para Verificar el Estado de Inicio de Sesión

Además de usar el comando docker info, también puede verificar si ha iniciado sesión en Docker Hub examinando el archivo de configuración de Docker:

ls -la ~/.docker/

Si ha iniciado sesión, debería ver un archivo llamado config.json en este directorio. Este archivo contiene su información de autenticación. Puede ver su contenido con:

cat ~/.docker/config.json

Si no ha iniciado sesión, es posible que el archivo no exista o que no contenga información de autenticación.

Cerrando Sesión del Registro de Docker

Ahora que entendemos cómo verificar el estado de inicio de sesión e intentar iniciar sesión, aprendamos cómo cerrar sesión de un registro de Docker.

Usando el Comando Docker Logout

Para cerrar sesión de un registro de Docker, puede usar el comando docker logout. Este comando elimina las credenciales almacenadas para el registro especificado, o el registro predeterminado si no se especifica ninguno.

Ejecute el siguiente comando:

docker logout

Si no había iniciado sesión, verá un mensaje como:

Not logged in to https://index.docker.io/v1/

Si había iniciado sesión y el cierre de sesión fue exitoso, verá:

Removing login credentials for https://index.docker.io/v1/

Verificando el Estado de Cierre de Sesión

Después de cerrar sesión, verifiquemos nuestro estado de inicio de sesión usando el comando docker info:

docker info

Busque la sección Registry (Registro) de nuevo. Ahora solo debería mostrar la URL del registro sin ninguna información de nombre de usuario:

Registry: https://index.docker.io/v1/

También puede verificar el archivo de configuración de Docker de nuevo:

cat ~/.docker/config.json

Si había iniciado sesión previamente, el archivo se habría actualizado para eliminar la información de autenticación del registro del que cerró sesión.

Entendiendo la Autenticación del Registro de Docker

Docker utiliza la autenticación basada en tokens para gestionar el acceso a los registros. Cuando inicia sesión en un registro, Docker almacena el token de autenticación en el archivo de configuración (~/.docker/config.json). Este token se utiliza para interacciones posteriores con el registro hasta que cierra sesión o el token expira.

Entender cómo verificar su estado de inicio de sesión y gestionar su autenticación es esencial para las operaciones seguras de Docker, especialmente cuando se trabaja con registros privados.

Resumen

En este laboratorio, ha aprendido habilidades esenciales para gestionar la autenticación del registro de Docker:

  1. Verificar que Docker está correctamente instalado y en ejecución
  2. Usar el comando docker info para ver información detallada sobre su entorno Docker
  3. Verificar su estado de inicio de sesión de Docker usando el comando docker info
  4. Entender el proceso de inicio de sesión en Docker Hub
  5. Cerrar sesión de un registro de Docker y verificar que el cierre de sesión fue exitoso

Estas habilidades son fundamentales para trabajar con Docker, especialmente cuando necesita interactuar con registros privados o proteger sus credenciales de autenticación.

Ahora tiene el conocimiento para gestionar con confianza su estado de inicio de sesión de Docker, asegurando operaciones de Docker seguras y eficientes en sus futuros proyectos.