Question about program language of AWS IoT Greengrass


From AWS IoT Greengrass FAQs, it said AWS IoT Greengrass discovery is available on the AWS IoT Device SDK via C++, Node.js, Java, and Python 2.7, 3.7, and 3.8.

However, my application is used JavaScript and React. Then, I found aws.greengrass.labs.LocalWebServer. Is it possible for me to use this aws.greengrass.labs.LocalWebServer deploy the application on Greengrass.

Rather than this aws.greengrass.labs.LocalWebServer, do I have another way to deploy my application on AWS IoT Greengrass?

P.S. I am using Ubuntu, but I am unable to download docker.

Thank you very much!

asked a year ago350 views
1 Answer


You can follow these steps to run your react app in Greengrass, assuming you have node installed on the device:

  1. Build your react app with npm run build,
  2. zip the content of the build folder and upload it to s3://<bucket>/com.example.ReactApp/
  3. create a component with the following recipe
RecipeFormatVersion: 2020-01-25
ComponentName: com.example.ReactApp
ComponentVersion: 1.0.7
ComponentDescription: ""
ComponentPublisher: Amazon
ComponentDependencies: {}
  - Platform:
      os: /linux/
      architecture: /x86|aarch64|amd64|arm/
      Install: |-
        npm init -y
        npm install live-server
        Script: node node_modules/live-server/live-server.js {artifacts:decompressedPath}/build
      - Uri: s3://<bucket>/com.example.ReactApp/
        Unarchive: ZIP
  1. deploy the component to your device

live-server (or SimpleHTTPServer in Python) are not suitable for production workloads but work fine for development and experimentation.

For a more robust serving of your application, consider using NGINX or httpd.



answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions