https://github.com/xavidop/alexa-nodejs-k8s-helloworld
Alexa Skill running in k8s
https://github.com/xavidop/alexa-nodejs-k8s-helloworld
aks aks-kubernetes-cluster alexa alexa-skill devspace docker eks eks-cluster gke gke-cluster helm kubernetes nodejs terraform
Last synced: about 1 month ago
JSON representation
Alexa Skill running in k8s
- Host: GitHub
- URL: https://github.com/xavidop/alexa-nodejs-k8s-helloworld
- Owner: xavidop
- License: apache-2.0
- Created: 2020-12-27T11:21:09.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-11-23T17:10:49.000Z (7 months ago)
- Last Synced: 2025-04-28T17:18:09.356Z (about 1 month ago)
- Topics: aks, aks-kubernetes-cluster, alexa, alexa-skill, devspace, docker, eks, eks-cluster, gke, gke-cluster, helm, kubernetes, nodejs, terraform
- Language: JavaScript
- Homepage:
- Size: 4.53 MB
- Stars: 3
- Watchers: 1
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Alexa Running in Kubernetes
- [Alexa Running in Kubernetes](#alexa-running-in-kubernetes)
- [Alexa Skill as a web server](#alexa-skill-as-a-web-server)
- [MongoDB persistence adapter](#mongodb-persistence-adapter)
- [Dockerizing the Alexa Skill](#dockerizing-the-alexa-skill)
- [Kubernetes objects of the Alexa Skill](#kubernetes-objects-of-the-alexa-skill)
- [Helm chart of the Alexa skill](#helm-chart-of-the-alexa-skill)
- [Local development and Deployment with DevSpace](#local-development-and-deployment-with-devspace)
- [Terraform.](#terraform)
- [Deploying the Alexa Skill on AWS Elastic Kubernetes Services](#deploying-the-alexa-skill-on-aws-elastic-kubernetes-services)
- [Deploying the Alexa Skill on Azure Kubernetes Services](#deploying-the-alexa-skill-on-azure-kubernetes-services)
- [Deploying the Alexa Skill on Google Kubernetes Engine](#deploying-the-alexa-skill-on-google-kubernetes-engine)In this repository you will find all the resources needed to transform or create an Alexa Skill as an NodeJS Express app ready to run on Kubernetes.
These are the two possible options you can use for running your Alexa Skill on kubernetes:**1. Using Mongo Atlas Cloud Schema**
**2. Using Provided Mongo Schema**
Those multiple options are supported by this implementation.
These are the main folders of the project:
```bash
├───.vscode
├───alexa-skill
├───app
├───docker
├───helm
└───terraform
├───eks
├───aks
└───gke
```* **.vscode:** launch preferences to run locally your Skill for local testing.
* **alexa-skill:** this folder contains all the metadata of the Alexa Skill such as the interaction model, assets, Skill manifest, etc. In this folder you will be able to run all the `ask cli` commands.
* **app:** the backend of the Alexa Skill a NodeJS app using Express.
* **docker:** where you can find the Dockerfile of the Alexa Skill backend as a NodeJS app.
* **helm:** the helm chart of the Alexa Skill ready to be deployed on any Kubernetes Cluster.
* **terraform:** Terraform files per different kind of private clouds.
* **eks:** All the files needed to deploy an Alexa Skill and a Kubernetes Cluster on AWS Elastic Kubernetes Service.
* **aks:** All the files needed to deploy an Alexa Skill and a Kubernetes Cluster on Azure Kubernetes Service.
* **gke:** All the files needed to deploy an Alexa Skill and a Kubernetes Cluster on Google Kubernetes Engine.Let's explain all the steps required to create an Alexa Skill and deploy it on a Kubernetes cluster.
In each step you will find all the pre-requisites needed for that step.## 1. Alexa Skill as a web server
How to create an Alexa Skill as a NodeJS app using Express. Check the full explanation [here](docs/WEBSERVER.md).
## 2. MongoDB persistence adapter
Usage of the new MongoDB Persistence adapter. Check the full explanation [here](https://github.com/xavidop/ask-sdk-mongodb-persistence-adapter).
## 3. Dockerizing the Alexa Skill
Dockerizing our Alexa Skill backend transformed into a NodeJS Express app. Check the full explanation [here](docs/DOCKER.md).
## 4. Kubernetes objects of the Alexa Skill
Creating all the Kubernetes objects needed to deploy our Alexa Skill on a Kubernetes cluster. Check the full explanation [here](docs/KUBERNETES.md).
## 5. Helm chart of the Alexa skill
Creating the Helm Chart with our Alexa Skill + MongoDB. Check the full explanation [here](docs/HELM.md).
## 6. Local development and Deployment with DevSpaceHow to develop in a Kubernetes environment. Check the full explanation [here](docs/LOCAL_DEVELOPMENT_DEPLOYMENT.md).
## 7. Terraform.
### 7.1. Deploying the Alexa Skill on AWS Elastic Kubernetes Services
How to deploy our Alexa skill in EKS. Check the full explanation [here](docs/TERRAFORM_EKS.md).
### 7.2. Deploying the Alexa Skill on Azure Kubernetes Services
How to deploy our Alexa skill in AKS. Check the full explanation [here](docs/TERRAFORM_AKS.md).
### 7.3. Deploying the Alexa Skill on Google Kubernetes Engine
How to deploy our Alexa skill in GKE. Check the full explanation [here](docs/TERRAFORM_GKE.md).