Examples of using Pulumi to deploy infrastructure, containers, and serverless apps to AWS, Azure, GCP, and Kubernetes.
Branch: master
Clone or download
zzxwill and swgillespie Add an example of deploying a Nginx server in GCP (#234)
* Add an example of deploying a Nginx server in GCP

In a GCP instance, deploy a Nginx server by `gcp-py` environment.

* add Python environment configuration in README
Latest commit ffc8e80 Feb 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
aws-go-s3-folder Remove duplicate template descriptions (#188) Dec 3, 2018
aws-js-containers Add quick tests to examples. (#221) Feb 8, 2019
aws-js-s3-folder-component Remove duplicate template descriptions (#188) Dec 3, 2018
aws-js-s3-folder Remove duplicate template descriptions (#188) Dec 3, 2018
aws-js-sqs-slack Test another example (#227) Feb 8, 2019
aws-js-webserver-component Remove duplicate template descriptions (#188) Dec 3, 2018
aws-js-webserver Remove duplicate template descriptions (#188) Dec 3, 2018
aws-py-stepfunctions Remove duplicate template descriptions (#188) Dec 3, 2018
aws-py-webserver Remove duplicate template descriptions (#188) Dec 3, 2018
aws-ts-airflow Add quick tests to examples. (#221) Feb 8, 2019
aws-ts-apigateway Fix formatting in aws-ts-apigateway readme. (#216) Feb 5, 2019
aws-ts-assume-role Add AWS AssumeRole example Nov 6, 2018
aws-ts-containers Add quick tests to examples. (#221) Feb 8, 2019
aws-ts-eks-hello-world aws(eks-hello-world): add clarifying info based on TGIK8s feedback Feb 12, 2019
aws-ts-eks Add quick tests to examples. (#221) Feb 8, 2019
aws-ts-pulumi-webhooks Fix webhook payload parsing (#215) Feb 4, 2019
aws-ts-resources Remove duplicate template descriptions (#188) Dec 3, 2018
aws-ts-ruby-on-rails Remove duplicate template descriptions (#188) Dec 3, 2018
aws-ts-serverless-raw Reference packages consistently in examples (#224) Feb 7, 2019
aws-ts-static-website Remove bucket policy. (#209) Jan 14, 2019
aws-ts-stepfunctions Reference packages consistently in examples (#224) Feb 7, 2019
aws-ts-thumbnailer Add quick tests to examples. (#221) Feb 8, 2019
aws-ts-twitter-athena Move more examples off of "dev" versions Dec 6, 2018
aws-ts-url-shortener-cache-http Add quick tests to examples. (#221) Feb 8, 2019
aws-ts-voting-app Add quick tests to examples. (#221) Feb 8, 2019
azure-js-webserver Remove duplicate template descriptions (#188) Dec 3, 2018
azure-ts-aks-helm Adopt breaking change in Helm chart API (#194) Dec 15, 2018
azure-ts-aks-mean Adopt breaking change in Helm chart API (#194) Dec 15, 2018
azure-ts-aks-multicluster Fix location in azure-ts-aks-multicluster. (#197) Dec 18, 2018
azure-ts-appservice Remove duplicate template descriptions (#188) Dec 3, 2018
azure-ts-arm-template Add an Azure Resource Manager (ARM) template example (#187) Dec 2, 2018
azure-ts-functions Remove duplicate template descriptions (#188) Dec 3, 2018
cloud-js-api Remove duplicate template descriptions (#188) Dec 3, 2018
cloud-js-containers Remove duplicate template descriptions (#188) Dec 3, 2018
cloud-js-httpserver Remove duplicate template descriptions (#188) Dec 3, 2018
cloud-js-thumbnailer-machine-learning Reference packages consistently in examples (#224) Feb 7, 2019
cloud-js-thumbnailer Reference packages consistently in examples (#224) Feb 7, 2019
cloud-js-twitter-athena Reference packages consistently in examples (#224) Feb 7, 2019
cloud-ts-url-shortener-cache-http Use "latest" as the version in more examples Dec 3, 2018
cloud-ts-url-shortener-cache Remove duplicate template descriptions (#188) Dec 3, 2018
cloud-ts-url-shortener Reference packages consistently in examples (#224) Feb 7, 2019
cloud-ts-voting-app Reference packages consistently in examples (#224) Feb 7, 2019
f5bigip-ts-ltm-pool Add F5 BigIP example. (#201) Feb 7, 2019
gcp-js-webserver Fix the template section of gcp-js-webserver (#233) Feb 11, 2019
gcp-py-instance-nginx Add an example of deploying a Nginx server in GCP (#234) Feb 19, 2019
gcp-ts-functions Reference packages consistently in examples (#224) Feb 7, 2019
gcp-ts-gke-hello-world gcp(gke-hello-world): add clarifying info based on TGIK8s feedback Feb 12, 2019
gcp-ts-gke Remove duplicate template descriptions (#188) Dec 3, 2018
gcp-ts-k8s-ruby-on-rails-postgresql Reference packages consistently in examples (#224) Feb 7, 2019
kubernetes-ts-configmap-rollout Reference packages consistently in examples (#224) Feb 7, 2019
kubernetes-ts-exposed-deployment Remove duplicate template descriptions (#188) Dec 3, 2018
kubernetes-ts-guestbook Fix instructions in README.md file. (#223) Feb 8, 2019
kubernetes-ts-helm-wordpress Reference packages consistently in examples (#224) Feb 7, 2019
kubernetes-ts-jenkins Reference packages consistently in examples (#224) Feb 7, 2019
kubernetes-ts-nginx Reference packages consistently in examples (#224) Feb 7, 2019
kubernetes-ts-s3-rollout Reference packages consistently in examples (#224) Feb 7, 2019
kubernetes-ts-sock-shop Reference packages consistently in examples (#224) Feb 7, 2019
kubernetes-ts-staged-rollout-with-prometheus Adopt breaking change in Helm chart API (#194) Dec 15, 2018
misc Test another example (#227) Feb 8, 2019
multicloud-ts-buckets Remove duplicate template descriptions (#188) Dec 3, 2018
twilio-ts-component Reference packages consistently in examples (#224) Feb 7, 2019
.gitignore Update Python examples to support Pulumi >= 0.16.4 (#180) Nov 15, 2018
.travis.yml Add "run at HEAD" leg to cron job Nov 30, 2018
CODE-OF-CONDUCT.md Adopt Contributor Covenant code of conduct Jun 1, 2018
LICENSE Relicense under Apache 2.0 (#61) May 24, 2018
Makefile Add "run at HEAD" leg to cron job Nov 30, 2018
README.md Convert readme to table (#101) Jul 12, 2018

README.md

Pulumi Examples

This repository contains examples of using Pulumi to build and deploy cloud applications and infrastructure.

Each example has a two-part prefix, <cloud>-<language>, to indicate which <cloud> and <language> it pertains to. The cloud is one of aws for Amazon Web Services, azure for Microsoft Azure, gcp for Google Cloud Platform, kubernetes for Kubernetes, or cloud for Pulumi's cross-cloud programming framework.

See the Pulumi documentation for more details on getting started with Pulumi.

Cloud Infrastructure

Example Language Cloud
AWS EC2 instance (JavaScript)
Provision a simple Linux web server that serves traffic on port 80
JavaScript AWS
AWS EC2 instance (Python)
Provision a simple Linux web server that serves traffic on port 80
Python AWS
Azure Virtual Machine (JavaScript)
Provision a simple Linux web server that serves traffic on port 80
JavaScript Azure
GCP Virtual Machine (JavaScript)
Provision a simple Linux web server that serves traffic on port 80
JavaScript Google Cloud Platform
Component for creating EC2 instances (JavaScript)
A minimal component that encapsulates creating EC2 instances
JavaScript AWS
Simple static website on AWS S3 (JavaScript)
A simple program that uses S3's website support
JavaScript AWS
Component for simple static website (JavaScript)
A reusable component for hosting static websites on AWS S3
JavaScript AWS
Simple static website on AWS S3 (Go)
A static website that uses S3's website support
Go AWS
Production-ready static website on AWS (TypeScript)
An end-to-end example for hosting a static website on AWS, using S3, CloudFront, Route53, and Amazon Certificate Manager
TypeScript AWS
Jenkins on Kubernetes (JavaScript)
A Jenkins container running on Kubernetes
JavaScript Kubernetes
AWS RDS and Airflow (TypeScript)
Deploys an RDS Postgres instance and containerized Airflow
TypeScript AWS
CloudWatch Log Groups, Event Targets, Metric Alarms, IAM roles, and more! (TypeScript)
An example that shows how to create a number of AWS resources, including cloudwatch.Dashboard, cloudwatch.EventRule, cloudwatch.LogGroup, sqs.Queue, and more.
TypeScript AWS
Azure App Service with SQL Database and Application Insights
Deploy Azure App Service along with SQL Database and Application Insights
TypeScript Azure
Azure Functions
A simple component for deploying inline code to Azure Functions
TypeScript Azure

Cloud Applications

Example Language Cloud
Serverless REST API (JavaScript)
A simple REST API to count the number of times a route has been hit
JavaScript AWS
NGINX container on AWS ECS (JavaScript)
In 15 lines of code, deploy an NGINX container to production
JavaScript AWS
Serverless URL shortener (TypeScript)
A complete URL shortener web application using high-level cloud.Table and cloud.HttpEndpoint components
TypeScript AWS
Serverless URL shortener with cache (TypeScript)
An extension of the URL shortener that adds a Redis cache
TypeScript AWS
Serverless video thumbnailer with Lambda and Fargate (JavaScript)
An end-to-end pipeline for generating keyframe thumbnails from videos uploaded to a bucket using containerized FFmpeg
JavaScript AWS
Serverless video thumbnailer with machine learning (JavaScript)
An extension of the video thumbnail example that uses AWS Rekognition video labels
JavaScript AWS
Raw AWS Serverless (TypeScript and C#)
A complete serverless C# application using that uses the raw resources aws.apigateway.RestAPI, aws.lambda.Function and aws.dynamodb.Table
TypeScript AWS
Voting App with containers (TypeScript)
A simple voting app that uses Redis for a data store and a Python Flask app for the frontend, demonstrating the high-level framework @pulumi/cloud.
TypeScript AWS
Kubernetes Guestbook (TypeScript)
A version of the Kubernetes Guestbook app using Pulumi and @pulumi/kubernetes
TypeScript Kubernetes
Kubernetes Sock Shop (TypeScript)
A version of the standard Sock Shop microservices reference app app using Pulumi and @pulumi/kubernetes
TypeScript Kubernetes
AWS Athena Twitter Analyzer (JavaScript)
An application that periodically queries Twitter for a search term, stores the results in S3, and configures an Athena query for data analysis
JavaScript AWS
Serverless SQS to Slack (JavaScript)
Uses a Lambda function to post SQS messages to a Slack channel
JavaScript AWS
AWS Step Functions
A basic example that demonstrates using AWS Step Functions with a Lambda function
TypeScript AWS
Twilio SMS handler for API Gateway
A sample component that makes it easy to connect AWS API Gateway and Twilio SMS
TypeScript AWS