Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Opcional: configurar su contenedor Docker para IDT para AWS IoT Greengrass

Modo de enfoque
Opcional: configurar su contenedor Docker para IDT para AWS IoT Greengrass - AWS IoT Greengrass

AWS IoT Greengrass Version 1 entró en la fase de vida útil prolongada el 30 de junio de 2023. Para obtener más información, consulte la política de mantenimiento de AWS IoT Greengrass V1 Después de esta fecha, AWS IoT Greengrass V1 no se publicarán actualizaciones que proporcionen funciones, mejoras, correcciones de errores o parches de seguridad. Los dispositivos que se ejecuten AWS IoT Greengrass V1 no se verán afectados y seguirán funcionando y conectándose a la nube. Le recomendamos encarecidamente que migre a AWS IoT Greengrass Version 2, ya que añade importantes funciones nuevas y es compatible con plataformas adicionales.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWS IoT Greengrass Version 1 entró en la fase de vida útil prolongada el 30 de junio de 2023. Para obtener más información, consulte la política de mantenimiento de AWS IoT Greengrass V1 Después de esta fecha, AWS IoT Greengrass V1 no se publicarán actualizaciones que proporcionen funciones, mejoras, correcciones de errores o parches de seguridad. Los dispositivos que se ejecuten AWS IoT Greengrass V1 no se verán afectados y seguirán funcionando y conectándose a la nube. Le recomendamos encarecidamente que migre a AWS IoT Greengrass Version 2, ya que añade importantes funciones nuevas y es compatible con plataformas adicionales.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWS IoT Greengrass proporciona una imagen de Docker y un Dockerfile que facilitan la ejecución del software AWS IoT Greengrass principal en un contenedor de Docker. Tras configurar el AWS IoT Greengrass contenedor, puede ejecutar pruebas de IDT. Actualmente, solo se admiten arquitecturas Docker x86_64 para ejecutar IDT AWS IoT Greengrass.

Esta función requiere IDT v2.3.0 o posterior.

El proceso de configuración del contenedor de Docker para ejecutar las pruebas de IDT depende de si se utiliza la imagen de Docker o el Dockerfile que proporciona. AWS IoT Greengrass

  • Uso de la imagen de Docker. La imagen de Docker tiene el software principal y las dependencias instalados AWS IoT Greengrass .

  • Utilice el archivo Dockerfile. El Dockerfile contiene el código fuente que puede usar para crear imágenes de contenedores personalizadas. AWS IoT Greengrass La imagen se puede modificar para ejecutarla en arquitecturas de plataforma distintas o para reducir su tamaño.

    nota

    AWS IoT Greengrass no proporciona Dockerfiles ni imágenes de Docker para AWS IoT Greengrass la versión 1.11.1 del software principal. Para ejecutar pruebas de IDT en tus propias imágenes de contenedor personalizadas, tu imagen debe incluir las dependencias definidas en el Dockerfile proporcionado por. AWS IoT Greengrass

Las siguientes funciones no están disponibles cuando se ejecuta AWS IoT Greengrass en un contenedor de Docker:

  • Conectores que se ejecutan en el modo Contenedor de Greengrass. Para ejecutar un conector en un contenedor de Docker, el conector debe ejecutarse en modo Sin contenedor. Para buscar conectores compatibles con el modo Sin contenedor, consulte conectores de Greengrass proporcionados por AWS. Algunos de estos conectores tienen un parámetro de modo de aislamiento que debe establecer en Sin contenedor.

  • Dispositivos locales y recursos de volumen. Las funciones de Lambda definidas por el usuario que se ejecutan en el contenedor de Docker deben obtener acceso directamente a los dispositivos y volúmenes del dispositivo principal.

Configura la imagen de Docker proporcionada por AWS IoT Greengrass

Siga estos pasos para configurar la imagen de AWS IoT Greengrass Docker para ejecutar las pruebas de IDT.

Requisitos previos

Antes de empezar este tutorial, debe hacer lo siguiente.

  • Debe instalar el software y las versiones siguientes en su ordenador host en función de la versión AWS Command Line Interface (AWS CLI) que elija.

    AWS CLI version 2
    • Docker, versión 18.09 o superior. Es posible que las versiones anteriores también funcionen, pero recomendamos la 18.09 o una versión posterior.

    • AWS CLI versión 2.0.0 o posterior.

      nota

      Para actualizar a una AWS CLI versión 2 posterior en un equipo con Windows, debe repetir el proceso de instalación de MSI.

    AWS CLI version 1
    • Docker, versión 18.09 o superior. Es posible que las versiones anteriores también funcionen, pero recomendamos la 18.09 o una versión posterior.

    • Python, versión 3.6 o superior.

    • pip, versión 18.1 o posterior.

    • AWS CLI versión 1.17.10 o posterior

      nota

      Si utiliza la instalación MSI de la AWS CLI versión 1 en Windows, tenga en cuenta lo siguiente:

      • Si la instalación de la AWS CLI versión 1 no puede instalar botocore, intente usar la instalación de Python y pip.

      • Para actualizar a una AWS CLI versión 1 posterior, debe repetir el proceso de instalación de MSI.

    • Docker, versión 18.09 o superior. Es posible que las versiones anteriores también funcionen, pero recomendamos la 18.09 o una versión posterior.

    • AWS CLI versión 2.0.0 o posterior.

      nota

      Para actualizar a una AWS CLI versión 2 posterior en un equipo con Windows, debe repetir el proceso de instalación de MSI.

  • Para acceder a los recursos de Amazon Elastic Container Registry (Amazon ECR), debe conceder el siguiente permiso.

    • Amazon ECR exige que los usuarios concedan el ecr:GetAuthorizationToken permiso mediante una política AWS Identity and Access Management (IAM) antes de poder autenticarse en un registro y enviar o extraer imágenes de un repositorio de Amazon ECR. Para obtener más información, consulte los ejemplos de políticas de repositorios de Amazon ECR y el Acceso a un repositorio de Amazon ECR en la Guía del usuario de Amazon Elastic Container Registry.

 

  1. Descargar la imagen de Docker y configurar el contenedor. Puede descargar la imagen preinstalada de Docker Hub o Amazon Elastic Container Registry(Amazon ECR) y ejecutarla en plataformas de Windows, macOS y Linux (x86_64).

    Para descargar la imagen de Docker de Amazon ECR, complete todos los pasos de Paso 1: Obtenga la imagen del AWS IoT Greengrass contenedor de Amazon ECR. A continuación, vuelva a este tema para continuar con la configuración.

  2. Solo usuarios de Linux: asegúrese de que el usuario que ejecuta IDT tiene permiso para ejecutar comandos Docker. Para obtener más información, consulte Manage Docker as a non-root user en la documentación de Docker.

  3. Para ejecutar el AWS IoT Greengrass contenedor, utilice el comando correspondiente a su sistema operativo:

    Linux
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ -v <host-path-to-kernel-config-file>:<container-path> \ <image-repository>:<tag>
    • <host-path-to-kernel-config-file>Sustitúyalo por la ruta al archivo de configuración del núcleo en el host y <container-path> por la ruta en la que está montado el volumen en el contenedor.

      El archivo de configuración del kernel en el host generalmente se encuentra en /proc/config.gz o /boot/config-<kernel-release-date>. Puede correr uname -r para encontrar el <kernel-release-date> valor.

      Ejemplo: para montar el archivo de configuración desde /boot/config-<kernel-release-date>

      -v /boot/config-4.15.0-74-generic:/boot/config-4.15.0-74-generic \

      Ejemplo: para montar el archivo de configuración desde proc/config.gz

      -v /proc/config.gz:/proc/config.gz \
    • Reemplace<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando.

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    macOS
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ <image-repository>:<tag>
    • Sustituya<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando:

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    Windows
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ <image-repository>:<tag>
    • Sustituya<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando:

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ -v <host-path-to-kernel-config-file>:<container-path> \ <image-repository>:<tag>
    • <host-path-to-kernel-config-file>Sustitúyalo por la ruta al archivo de configuración del núcleo en el host y <container-path> por la ruta en la que está montado el volumen en el contenedor.

      El archivo de configuración del kernel en el host generalmente se encuentra en /proc/config.gz o /boot/config-<kernel-release-date>. Puede correr uname -r para encontrar el <kernel-release-date> valor.

      Ejemplo: para montar el archivo de configuración desde /boot/config-<kernel-release-date>

      -v /boot/config-4.15.0-74-generic:/boot/config-4.15.0-74-generic \

      Ejemplo: para montar el archivo de configuración desde proc/config.gz

      -v /proc/config.gz:/proc/config.gz \
    • Reemplace<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando.

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    importante

    Cuando realices pruebas con IDT, no incluyas el --entrypoint /greengrass-entrypoint.sh \ argumento que se usa para ejecutar la imagen para uso general AWS IoT Greengrass .

  4. Siguiente paso: configure AWS las credenciales y el device.json archivo.

Configure el dockerfile proporcionado por AWS IoT Greengrass

Siga estos pasos para configurar la imagen de Docker creada a partir del AWS IoT Greengrass Dockerfile para ejecutar las pruebas de IDT.

  1. Desde AWS IoT Greengrass Software Docker, descargue el paquete Dockerfile en su equipo host y extráigalo.

  2. Abra README.md. Los tres pasos siguientes hacen referencia a las secciones de este archivo.

  3. Asegúrese de que cumpla los requisitos de la sección Requisitos previos.

  4. Solo para usuarios de Linux: complete los pasos Habilitar la protección de enlaces simbólicos y enlaces duros y Habilitar el reenvío de red. IPv4

  5. Para crear la imagen de Docker, complete todos los pasos del Paso 1. Cree la imagen de Docker AWS IoT Greengrass . A continuación, vuelva a este tema para continuar con la configuración.

  6. Para ejecutar el AWS IoT Greengrass contenedor, utilice el comando correspondiente a su sistema operativo:

    Linux
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ -v <host-path-to-kernel-config-file>:<container-path> \ <image-repository>:<tag>
    • <host-path-to-kernel-config-file>Sustitúyalo por la ruta al archivo de configuración del núcleo en el host y <container-path> por la ruta en la que está montado el volumen en el contenedor.

      El archivo de configuración del kernel en el host generalmente se encuentra en /proc/config.gz o /boot/config-<kernel-release-date>. Puede correr uname -r para encontrar el <kernel-release-date> valor.

      Ejemplo: para montar el archivo de configuración desde /boot/config-<kernel-release-date>

      -v /boot/config-4.15.0-74-generic:/boot/config-4.15.0-74-generic \

      Ejemplo: para montar el archivo de configuración desde proc/config.gz

      -v /proc/config.gz:/proc/config.gz \
    • Reemplace<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando.

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    macOS
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ <image-repository>:<tag>
    • Sustituya<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando:

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    Windows
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ <image-repository>:<tag>
    • Sustituya<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando:

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    docker run --rm --init -it -d --name aws-iot-greengrass \ -p 8883:8883 \ -v <host-path-to-kernel-config-file>:<container-path> \ <image-repository>:<tag>
    • <host-path-to-kernel-config-file>Sustitúyalo por la ruta al archivo de configuración del núcleo en el host y <container-path> por la ruta en la que está montado el volumen en el contenedor.

      El archivo de configuración del kernel en el host generalmente se encuentra en /proc/config.gz o /boot/config-<kernel-release-date>. Puede correr uname -r para encontrar el <kernel-release-date> valor.

      Ejemplo: para montar el archivo de configuración desde /boot/config-<kernel-release-date>

      -v /boot/config-4.15.0-74-generic:/boot/config-4.15.0-74-generic \

      Ejemplo: para montar el archivo de configuración desde proc/config.gz

      -v /proc/config.gz:/proc/config.gz \
    • Reemplace<image-repository>: <tag> en el comando por el nombre del repositorio y la etiqueta de la imagen de destino.

      Ejemplo: para apuntar a la última versión del software AWS IoT Greengrass Core

      216483018798.dkr.ecr.us-west-2.amazonaws.com/aws-iot-greengrass:latest

      Para obtener la lista de imágenes de AWS IoT Greengrass Docker, ejecute el siguiente comando.

      aws ecr list-images --region us-west-2 --registry-id 216483018798 --repository-name aws-iot-greengrass
    importante

    Cuando realices pruebas con IDT, no incluyas el --entrypoint /greengrass-entrypoint.sh \ argumento que se usa para ejecutar la imagen para uso general AWS IoT Greengrass .

  7. Siguiente paso: configure AWS las credenciales y el device.json archivo.

Solución de problemas con la configuración de su contenedor Docker para IDT para AWS IoT Greengrass

Utilice la siguiente información para solucionar problemas relacionados con la ejecución de un contenedor Docker para que IDT lo pruebe. AWS IoT Greengrass

ADVERTENCIA: Error al cargar configfile:/home/user/.docker/config.json - stat /home//<user>/.docker/config.json: permiso denegado

Si obtiene este error al ejecutar comandos de docker en Linux, ejecute el siguiente comando. Sustituya <user> el siguiente comando por el usuario que ejecuta IDT.

sudo chown <user>:<user> /home/<user>/.docker -R sudo chmod g+rwx /home/<user>/.docker -R
PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.