Sock Shop Pulumi demo
The standard Weaveworks Sock Shop demo based on https://github.com/microservices-demo/microservices-demo
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set kubernetes-ts-sock-shopcd pulumi-examples/kubernetes-ts-sock-shopA version of the standard Sock Shop microservices reference app app using
Pulumi and @pulumi/kubernetes.
Prerequisites#
Deploying the example#
-
Create a new stack:
Terminal window pulumi stack init dev -
Tell the application whether you’re deploying to minikube:
Terminal window pulumi config set isMinikube <value> -
Install dependencies:
Terminal window npm install -
Deploy the stack:
Terminal window pulumi upUpdating stack 'testing'Performing changes:Type Name Status Info+ kubernetes:core:Service carts-db created+ kubernetes:core:Service carts created+ kubernetes:core:Service catalog-db created+ kubernetes:core:Service catalog created+ kubernetes:core:Service orders-db created+ kubernetes:core:Service orders created+ kubernetes:core:Service payment created+ kubernetes:core:Service rabbitmq created+ kubernetes:core:Service shipping created+ kubernetes:core:Service user-db created+ kubernetes:core:Service user created+ kubernetes:core:Service front-end created+ kubernetes:core:Service queue-master created+ kubernetes:apps:Deployment queue-master created+ kubernetes:apps:Deployment catalog-db created+ kubernetes:apps:Deployment catalog created+ kubernetes:apps:Deployment payment created+ kubernetes:apps:Deployment rabbitmq created+ kubernetes:apps:Deployment front-end created+ kubernetes:apps:Deployment carts-db created+ kubernetes:apps:Deployment orders-db created+ kubernetes:apps:Deployment user-db created+ kubernetes:apps:Deployment user created+ kubernetes:apps:Deployment carts created+ kubernetes:apps:Deployment orders created+ kubernetes:apps:Deployment shipping createdinfo: 27 changes performed:+ 27 resources createdUpdate duration: 3m2.127835854s -
The application is now deployed. Use
kubectlto see the deployed services:Terminal window kubectl get services -n sock-shopNAME CLUSTER-IP EXTERNAL-IP PORT(S) AGEcarts 10.47.242.164 <none> 80/TCP 4mcarts-db 10.47.245.60 <none> 27017/TCP 4mcatalogue 10.47.255.170 <none> 80/TCP 4mcatalogue-db 10.47.252.96 <none> 3306/TCP 4mfront-end 10.47.247.63 <nodes> 80:30001/TCP 4morders 10.47.255.197 <none> 80/TCP 4morders-db 10.47.242.209 <none> 27017/TCP 4mpayment 10.47.254.192 <none> 80/TCP 4mqueue-master 10.47.251.206 <none> 80/TCP 4mrabbitmq 10.47.254.26 <none> 5672/TCP 4mshipping 10.47.247.218 <none> 80/TCP 4muser-db 10.47.242.91 <none> 27017/TCP 4muser 10.47.242.91 <none> 27017/TCP 4m
Cleaning up#
Once you’re finished experimenting, you can destroy your stack and remove it to avoid incurring any additional cost:
pulumi destroypulumi stack rm