You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

0 Días
5 Hrs
7 Min
12 Seg

Herramientas necesarias para un ambiente de trabajo con serverless framework

6/25
Resources

How to prepare your setup for Serble on AWS?

Are you ready to deploy applications in the cloud with efficiency and flexibility? Prepare your development environment with Serble and AWS, allowing you to work both on-premises and in the cloud. Here we show you how to install all the necessary tools on a Windows operating system, and guide you step-by-step to install some of the most essential ones, such as Java, AWS CLI, Git, Node.js, Postman and Python.

What tools do you need to get started?

It is essential to know what tools are required before starting any installation. In this course, we will use a variety of tools that complement each other to efficiently create, manage and deploy serverless applications.

  • Java: Required to integrate DynamoDB with the Serble as Framework.
  • AWS CLI: Facilitates the management and configuration of AWS services from the command line.
  • Git: Used to manage code repositories.
  • Node.js: Provides the execution environment for JavaScript applications.
  • Postman: Tool for API testing using HTTP requests.
  • Python: Used to develop Lambda functions with Python.

How to install and configure Java?

To maximize the use of DynamoDB, we need Java. Installation is simple. Download the MSI file from the Oracle page, follow the prompts to install it and then follow these steps to set the JAVA_HOME environment variable:

# Example on Windows- Go to "System" > "Advanced Settings" > "Environment Variables"- Create a new system variable named JAVA_HOME- Assign the path to your Java executable file as the value (e.g., "C:\Program Files\Java\jdk-xx").

How to install the AWS CLI?

This is a crucial step to run and control services on AWS. To install the AWS CLI on Windows:

  1. Go to the AWS website for the CLI and follow the steps outlined for Windows.
  2. Use the msixsec.exe command in your terminal to start the installation.
  3. Configure your AWS credentials using the aws configure command:
    • Enter your Access Key, Secret Key, default region (e.g., US East 1), and preferred output format (JSON).

How to install and use Git?

To clone repositories and perform other version control operations, Git is used. Installation is simple:

  1. Download the Git installer from the official site.
  2. Follow the steps of the installation wizard (Next, Next, Next).
  3. Validate the installation by cloning a repository:
# Example in Windows terminalgit clone <URL-of-repository> .

How to install Node.js and Postman?

Node.js provides the necessary JavaScript runtime environment. For Node.js:

  1. Go to nodejs.org to download the recommended LTS version.
  2. Complete the installation by following the steps in the wizard.

For Postman:

  1. Download Postman from the official site and run the installer.
  2. Run and check for any HTTP requests as a quick test.

How to prepare Python?

For Lambda functions with Python, installation of the language is required:

  1. Download Python 3.11 from the official website.
  2. Perform the installation by choosing the default settings.
  3. Validate with a simple command in terminal:
# Example in terminalpython --version

How to work with Serble as Framework?

Installing Serble is one of the last essential steps. Use NPM to install the necessary libraries:

# Example in project directorynpm install.

Also, to make it easier to work in local environments, make sure to install and configure DynamoDB Local with the command:

sls dynamodb install

With this guide, all your tools are ready to be used with Serble as Framework. This setup is the basis to start creating powerful serverless applications, implementing cloud services and managing them efficiently. Go ahead, the world of the cloud awaits you!

Contributions 37

Questions 17

Sort by:

Want to see more contributions, questions and answers from the community?

Error: Error getting DynamoDb local latest tar.gz location undefined: 403

Si tienes este error en la instalación de dynamodb plug-in es porque AWS cambio el dominio de descarga del plugin. Para solucionar esto basta con editar manualmente la propiedad de download_urlen node_modules/dynamodb-localhost/dynamodb/config.json a https://s3.us-west-2.amazonaws.com/dynamodb-local/dynamodb_local_latest.tar.gz y la importación de http a https en node_modules/dynamodb-localhost/dynamodb/installer.js
Luego hacer la instalación normal

serverless install dynamodb

Si después de solucionar el error que menciona @Pablo Ortiz te enfrentas con un error relacionado a:
"UnrecognizedClientException: The Access Key ID or security token is invalid.: DynamoDB - Error -"
Hay 2 pasos faltantes a corregir que no se mencionan en el video:

  1. En el archivo serverless.yml del fichero clonado, hay que modificar en el apartado de plugins:
  - serverless-dynamodb-local por éste otro:
  - serverless-dynamodb

Posterior, necesitamos desinstalar el modulo viejo (olvidado por su creador y de dificil comunicación para realizarle cambios) por el nuevo (actualmente con soporte y actualizado)
Eso se logra con unos pasos en npm el cual se detallan en el post del repo https://github.com/99x/serverless-dynamodb-local/issues/294#issuecomment-1619297733

En conclusión, los pasos son:
1.1) Uninstall serverless-dynamodb-local, e.g. npm uninstall serverless-dynamodb-local
1.2) Install serverless-dynamodb, e.g. npm install serverless-dynamodb

  1. Ahora que ya tenemos el modulo de dynamodb actualizado en npm, el ultimo paso es agregar tus llaves en el archivo handler.js localizado en el directorio de "Serverless-framework\getusers"
    Aquí tienes que agregar tus llaves del usuario de aws, tanto la accessKeyId como la secretAccessKey.

Con éstos cambios al día de 04 de Julio 2023, funciona correctamente. Cabe resaltar que ésto puede cambiar y NO ES UNA SOLUCION DEFINITIVA, por lo mismo que comenta el profesor de ser una comunidad de código abierto.

Espero le sirva a más de alguno 😄✌

El plugin de dynamodb para Serverless Framework tiene mejoras constantemente, parece ser que en las nuevas versiones disponibles se introdujo un error que genera este comportamiento al hacer la instalación en local.

Si te encuentras con este error a la hora de hacer el

sls dynamodb install

Error:

Protocol "https:" not supported. Expected "http:"

Te recomendamos seguir los siguientes pasos para hacer la instalacion manual:
*Recuerda que debes tener instalado wget

wget http://dynamodb-local.s3-website-us-west-2.amazonaws.com/dynamodb_local_latest.tar.gz
mkdir .dynamodb
tar zxvf dynamodb_local_latest.tar.gz -C .dynamodb
Info:

Github Issue Thread

No puedo creer que este tan desactualizado esta parte. Platzi, por que dejan que pase esto, mucha perdida de tiempo tratando de hacer que funcione.
Estoy cansado de estos cursos desactualizados
Si te ha salido el error **UnrecognizedClientException: The Access Key ID or security token is invalid.** al ejcutar el comando **sls offline start**, para solucionarlo, debemos: * Auditar los paquetes con el comando **npm audit fix --force** esto auditará todos los paquetes y dependencias de npm. * Una vez que termine de auditar, podemos volver a ejecutar el comando **sls offline start**. * Sí todo ha salido ok, el servicio debió levantarse correctamente. Este problema puede ocurrir por: * El Access Key ID y Secret Access Key son incorrectos. * Las credenciales ya no son validas. * El usuario no tiene permisos, esto se puede chequear en IAM (Identity and Access Management) o usando el CLI con el comando **aws iam list-user-policies --user-name \<user-name>** * Problemas con el SDK de AWS.
Si no les funciona en windows usando PowerShell: `sls --help` Ejecuten el siguiente comando para remover el alias y se soluciona: `Remove-Item alias:sls`

Me agrada mucho que el profesor dedicara una clase completa a la instrucción de instalación de los softwares que se usarán a lo largo del curso. Hay bastantes estudiantes que estarán usando alguna de estas herramientas por primera vez :smile

Acabo de hacer un fork del proyecto con las configuraciones necesarias para que no de error y documentado todo el proceso para su configuración en caso de requerir. Les dejo el link del repositorio: <https://github.com/paulosk8/serverless-framework>
A fecha de hoy, 28 de noviembre del 2024, hay muchos errores en el proceso de instalación, Serverless framework cambió los comandos y se torna muy difícil avanzar. Creo que tendré que abandonar el curso :(
Es impresionante que con la capacidad de tener control de versiones, el maestro entregue un curso tan defectuoso
Ante el error Serverless Framework install sls error: "cmdlet Select-String at command pipeline position 1 Supply values for the following parameters: Path\[0] " El error que estás experimentando al intentar instalar Serverless Framework con el comando `sls` en PowerShell se debe a un conflicto con un alias predeterminado de PowerShell. PowerShell tiene un cmdlet llamado `Select-String` que también se abrevia como `sls`. Cuando intentas ejecutar `sls`, PowerShell intenta ejecutar `Select-String` en lugar del comando de Serverless Framework. Para resolver este problema, tienes algunas opciones: 1\. \*\*Usar el nombre completo del comando\*\*: Puedes evitar el conflicto utilizando el nombre completo del comando de Serverless Framework: ```bash serverless ``` Por ejemplo, para desplegar, usarías: ```bash serverless deploy ``` 2\. \*\*Eliminar el alias de PowerShell\*\*: Si prefieres seguir utilizando `sls`, puedes eliminar el alias de PowerShell ejecutando el siguiente comando en tu sesión de PowerShell: ```powershell Remove-Item alias:sls ``` Ten en cuenta que esto solo afectará a la sesión actual de PowerShell. Si deseas eliminar el alias permanentemente, tendrás que agregar ese comando a tu perfil de PowerShell. 3\. \*\*Usar otro alias para Serverless Framework\*\*: En versiones más recientes de Serverless Framework, se ha introducido un alias secundario `slss` que puedes usar sin conflictos en PowerShell: ```bash slss ``` Estas soluciones deberían permitirte utilizar Serverless Framework en PowerShell sin problemas¹².
Si te sale **Error getting DynamoDb local latest tar.gz location undefined: 403** lo resolvi de la siguiente manera: \- Editar el archivo \*\*node\_modules/dynamodb-localhost/dynamodb/config.json\*\*, editar la propiedad \*\*download\_url\*\* colocandole la URL donde se encuentra alojado actualmente el archivo \*\*dynamodb\_local\_latest.tar.gz\*\*. \- Se puede obtener la ultima URL de alojamiento ingresando a está \[página]\(https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.DownloadingAndRunning.html). \- Una vez que ingresamos a la página, podemos elegir la versión a descargar de \*\*Download DynamoDB local\*\* \- Click en la versión deseada para abrir la lista desplegable. \- Una vez abierta la lista desplegable, en la sección \*\*Download Links\*\* podremos copiar el enlace directo de la ultima locación del archivo. \- Clic derecho y copiamos el enlace. \- Nos dirigimos al archivo \*\*node\_modules/dynamodb-localhost/dynamodb/config.json\*\* y pegamos la nueva URL en la propiedad \*\*download\_url\*\*. \- Luego nos vamos a \*\*node\_modules/dynamodb-localhost/dynamodb/installer.js\*\* y reemplzamos el módulo \*\*http\*\* por \*\*https\*\* en las importaciones.

Por otro lado, en caso de tener este otro error luego de iniciar el servidor dynamodb y consultar el endpoint GET user (Febrero/2024):

Server ready: http ://localhost:3000 🚀


GET /dev/users/1 (λ: get-users)
(node:7328) NOTE: We are formalizing our plans to enter AWS SDK for JavaScript (v2) into maintenance mode in 2023.

Please migrate your code to use AWS SDK for JavaScript (v3).
For more information, check the migration guide at https://a.co/7PzMCcy
(Use `node --trace-warnings ...` to show where the warning was created)
× Unhandled exception in handler 'get-users'.
× UnrecognizedClientException: The Access Key ID or security token is invalid.

Se debe migrar al AWS SDK 3 con este comando, especificando la ruta donde esta nuestro serverless-framework:

npx aws-sdk-js-codemod -t v2-to-v3 C:\Users\user\serverless-framework

pueden usar algo como https://github.com/nvm-sh/nvm para manejar varias versiones de node si lo necesitan

Ademas de cambiar la URL de descarga para DynamoDb deben cambiar el protocolo por HTTPS en el archivo install.js

"use strict";

var tar = require("tar"),
  zlib = require("zlib"),
  path = require("path"),
  https = require("https"),
  fs = require("fs"),
  ProgressBar = require("progress"),
  utils = require("./utils");

var download = function(downloadUrl, installPath, callback) {
  console.log(
    `Started downloading dynamodb-local from ${downloadUrl} into ${installPath}. Process may take few minutes.`
  );
  https
    .get(downloadUrl, function(response) {
      var len = parseInt(response.headers["content-length"], 10),
        bar = new ProgressBar(
          "Downloading dynamodb-local [:bar] :percent :etas",
          {
            complete: "=",
            incomplete: " ",
            width: 40,
            total: len
          }
        );

Todo estaba cnfigurado 😃

¡Buenísimo que estés armando tu ambiente para trabajar con **Serverless Framework**! Aquí tienes una lista organizada de las **herramientas esenciales** para desarrollar, probar y desplegar aplicaciones serverless de forma eficiente: ## 🧰 Herramientas necesarias para un entorno de trabajo con Serverless Framework ### 1. 🔧 **Herramientas base** HerramientaDescripciónEnlace[Node.js](https://nodejs.org/)Entorno de ejecución JavaScript para el backend.[🌐](https://nodejs.org/)[npm o yarn](https://www.npmjs.com/)Gestores de paquetes para instalar dependencias.[🌐](https://www.npmjs.com/)[Serverless CLI](https://www.serverless.com/framework/docs/getting-started)Interfaz para crear y desplegar servicios.[🌐](https://www.serverless.com/framework/docs/getting-started) Instalación del framework: npm install -g serverless ### 2. 🌐 **Proveedor cloud (como AWS)** HerramientaDescripciónCuenta de AWSPara desplegar tus funciones Lambda.AWS CLIHerramienta para interactuar con AWS vía terminal. Instalación y configuración: \# Instalar AWS CLI sudo apt install awscli # Linux \# o brew install awscli # macOS \# Configurar credenciales aws configure ### 3. 🧪 **Herramientas para pruebas locales** HerramientaDescripción`serverless-offline`Simula API Gateway + Lambda en tu máquina local.`serverless-dynamodb-local` (opcional)Simula DynamoDB localmente para pruebas.Postman / curlPara probar endpoints HTTP. Ejemplo de instalación: npm install --save-dev serverless-offline ### 4. 💻 **Editor de código y herramientas adicionales** HerramientaUso[Visual Studio Code](https://code.visualstudio.com/)Editor recomendado por sus extensiones.Extensión ESLint / PrettierPara mantener el código limpio y uniforme.Git + GitHub/GitLabControl de versiones. ### 5. 📦 **Complementos opcionales (plugins)** PluginFunción`serverless-plugin-optimize`Minimiza y empaqueta el código.`serverless-dotenv-plugin`Carga variables desde archivos `.env`.`serverless-plugin-canary-deployments`Implementaciones graduales. ### 6. 🧠 **Documentación y monitoreo** HerramientaFunción[Dashboards Serverless](https://www.serverless.com/monitoring)Monitoreo y alertas.CloudWatch LogsLogs y métricas de AWS Lambda. ## 🎯 Consejos * Usa `serverless invoke local` para pruebas rápidas. * Mantén tus funciones pequeñas y desacopladas. * Usa `.env` para manejar secretos y configuraciones locales. * Integra con servicios como DynamoDB, S3 o SNS según tus necesidades.
Hola, Si estas usando Windows y te sale este error: `cmdlet Select-String at command pipeline position 1` `Supply values for the following parameters:` `Path[0]:` Es porque PowerShell está interpretando `sls` como un alias del cmdlet `Select-String`, no como el comando de Serverless Framework. Usa mejor `serverless` y asi no tienes que instalar ni modificar nada.
Hola, al intentar hacer el comando sls --help o sls dynamodb install me sale el siguiente error que no me permite continuar con nada más: (node:25324) \[DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead. (Use `node --trace-deprecation ...` to show where the warning was created) Environment: win32, node 22.13.1, framework 3.40.0 (local), plugin 7.2.3, SDK 4.5.1 Docs: docs.serverless.com Support: forum.serverless.com Bugs: github.com/serverless/serverless/issues Error: TypeError: Class extends value undefined is not a constructor or null at new module.exports (C:\Users\LoboGuerrero\Documents\Cursos\Platzi\Serverless-Framework\Repo2\serverless-framework\node\_modules\serverless-dynamodb-local\index.js:10:43) at PluginManager.addPlugin (C:\Users\LoboGuerrero\Documents\Cursos\Platzi\Serverless-Framework\Repo2\serverless-framework\node\_modules\serverless\lib\classes\plugin-manager.js:91:28) at C:\Users\LoboGuerrero\Documents\Cursos\Platzi\Serverless-Framework\Repo2\serverless-framework\node\_modules\serverless\lib\classes\plugin-manager.js:137:69 at Array.forEach (\<anonymous>) at PluginManager.loadAllPlugins (C:\Users\LoboGuerrero\Documents\Cursos\Platzi\Serverless-Framework\Repo2\serverless-framework\node\_modules\serverless\lib\classes\plugin-manager.js:137:44) at async Serverless.init (C:\Users\LoboGuerrero\Documents\Cursos\Platzi\Serverless-Framework\Repo2\serverless-framework\node\_modules\serverless\lib\serverless.js:146:5) at async C:\Users\LoboGuerrero\Documents\Cursos\Platzi\Serverless-Framework\Repo2\serverless-framework\node\_modules\serverless\scripts\serverless.js:601:7
Para los que usan windows, al parecer "sls" hace referencia a una palabra reservada en windows, puede ser sustituida por "serverless". Tambien al usar el comando "serverless offline start" tuve este error: "Error: spawn java ENOENT at childProcess.\_handle..." Esto se soluciona desinstalando la version de dynamodb-local: "npm uninstall serverless-dynamodb-local" E instalando una version anterior: "npm install [email protected]" Al hacer estos cambios el servicio deberia correr sin ningun problema: "serverless offline start"
Imposible avanzar, he solucionado al menos 4 errores y no he podido empezar.
actualicen el curso por favor
Tengo windows 11 e hice toda la configuración tal como muestra el video, hice el ajuste de la url como lo menciona @Pablo Ortiz sin embargo recibo el siguiente error ![](D:\Pictures\Screenshots\Captura%de%pantalla%2024-09-13%050355.png)`Started downloading dynamodb-local from `[`https://s3.us-west-2.amazonaws.com/dynamodb-local/dynamodb_local_latest.tar.gz`](https://s3.us-west-2.amazonaws.com/dynamodb-local/dynamodb_local_latest.tar.gz)` into D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\.dynamodb. Process may take few minutes.` `Environment: win32, node 20.17.0, framework 3.39.0 (local), plugin 7.2.3, SDK 4.5.1` `Docs: docs.serverless.com` `Support: forum.serverless.com` `Bugs: github.com/serverless/serverless/issues` `Error:` `Error: Error configuring or installing Dynamodb local TypeError [ERR_INVALID_PROTOCOL]: Protocol "https:" not supported. Expected "http:"` ` at Object.install (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\dynamodb-localhost\dynamodb\installer.js:72:11)` ` at Object.install (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\dynamodb-localhost\index.js:14:19)` ` at D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\serverless-dynamodb-local\index.js:241:57` ` at Promise._execute (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\bluebird\js\release\debuggability.js:384:9)` ` at Promise._resolveFromExecutor (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\bluebird\js\release\promise.js:518:18)` ` at new Promise (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\bluebird\js\release\promise.js:103:10)` ` at ServerlessDynamodbLocal.installHandler (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\serverless-dynamodb-local\index.js:241:16)` ` at PluginManager.runHooks (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\serverless\lib\classes\plugin-manager.js:530:15)` ` at PluginManager.invoke (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\serverless\lib\classes\plugin-manager.js:564:20)` ` at async PluginManager.run (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\serverless\lib\classes\plugin-manager.js:604:7)` ` at async Serverless.run (D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\serverless\lib\serverless.js:179:5)` ` at async D:\Desktop\Cursos\ServerLess\Repositorios\serverless-framework\node_modules\serverless\scripts\serverless.js:819:9` Luego de ejecutar el comando "sls dynamodb install" alguien sabe que solución se puede realizar
Cuando vayan a insertar sus credenciales de aws en el archivo handler.js tengan en cuenta modificar el archivo correcto. Ya que en mi caso la carpeta del proyecto tenía varios archivos con el mismo nombre, por lo cual daba error de credenciales al momento de realizar la petición GET
**tengo el sigueinte erro**r: <u>Error:</u> UnknownEndpoint: Inaccessible host: `localhost' at port `8000'. This service may not be available in the `localhost' region.
estuvo complejo la instalación por que permanecia el error (403) pero se logro solucionar la perseveracia hace que todo salga como se quiere

En caso de tener este error (Febrero/2024):

C:\Users\user\serverless-framework>sls offline start
Running "serverless" from node_modules
(node:3664) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
Dynamodb Local Started, Visit: http: // localhost:8000 /shell
UnrecognizedClientException: The Access Key ID or security token is invalid.: DynamoDB - Error -
Environment: win32, node 21.6.1, framework 3.38.0 (local) 3.38.0v (global), plugin 7.2.0, SDK 4.5.1
Docs:        docs.serverless.com
Support:     forum.serverless.com
Bugs:        github.com / serverless / serverless/issues

Error:
UnrecognizedClientException: The Access Key ID or security token is invalid. 

Me sirvió esta solución:
https://stackoverflow.com/a/76608752/17748598
Espero les sirva!

Like si viste el "Moto viajero cali colombia"
fix Error: Error configuring or installing Dynamodb local TypeError npm uninstall serverless-dynamodb-local npm i serverless-dynamodb

La siguiente guia me sirvio para solucionar el problema con dynamodb:

First, make sure you have Java JDK & JRE (Java Runtime Engine) version 6.x or newer is installed on your machine since it is required by the Local DynamoDB.

Usually error gets fixed by executing the following set of commands:

  npm remove serverless-dynamodb-local
  npm install serverless-dynamodb-local@0.2.35
  sls dynamodb install

If you want to use versions after 0.2.26 make sure to execute the following command instead of sls dynamodb install:

sls dynamodb install --localPath ./bin

After you have installed the Local DynamoDB, you can start it by executing the following command:

sls offline start

If DynamoDB Offline is still not running, it might be failing to do so because port 8000 is already in use. You can run DynamoDB Offline on a different port by specifying -p option to the sls offline start command like so:

sls dynamodb start -p 8000

Link referencia: https://dynobase.dev/dynamodb-errors/unable-to-start-dynamodb-local-process/

en este paso tuve un error de codigo a la hora de ejecutar el comando sls dynamodb install, esto me dice en mi cmd "Running "serverless" from node_modules Started downloading dynamodb-local from http://s3-us-west-2.amazonaws.com/dynamodb-local/dynamodb_local_latest.tar.gz into C:\Users\crash\serverless-framework\.dynamodb. Process may take few minutes.

Ruta :
serverless-framework/node_modules/.pnpm/[email protected]/node_modules/dynamodb-localhost/dynamodb/installer.js

Yo les recomiendo fervientemente que instalen los versión manager de cada lenguaje, asi no se vuelven un 8 saltando de versiones de lenguajes.

cabe destacar que en windows da muchos problemas, asi que lo mejor trabajar desde una instancia Windows Linux subsystem (WLS) asi tienen un lindo sandbox de desarrollo

En mi caso particular ( en windows 11 enterprise) , me salia este error:

serverless dynamodb start  
Running "serverless" from node_modules

UnknownError: 404: DynamoDB - Error - 
Environment: win32, node 14.21.3, framework 3.30.0 (local) 3.28.1v (global), plugin 6.2.3, SDK 4.3.2
Docs:        docs.serverless.com
Support:     forum.serverless.com


Error:
UnknownError: 404

y la solucion fue cambiar el numero de puerto de dynamodb :8001

Si el comando sls no funciona, utilizá:

serverless --help 

Para MAC Serverless:
(En la terminal) --> sudo npm install -g serverless