Viewing docs for AWS v7.31.0
published on Tuesday, May 26, 2026 by Pulumi
published on Tuesday, May 26, 2026 by Pulumi
Voting app Using Django and MySQL
I want to use the Pulumi AWS package (aws) in my project.
## Provider details
- Package: aws
- Version: v7.31.0
- Publisher: Pulumi
- Source: pulumi
- Repository: https://github.com/pulumi/pulumi-aws
## Documentation
The Pulumi Cloud Registry API serves canonical, up-to-date docs for this package — including private packages and every published version. Send the "Accept: text/markdown" header for clean readable content, or "application/json" for structured data.
Start at the navigation tree, which cross-links to the readme, installation guide, and per-resource docs URL template:
- https://api.pulumi.com/api/registry/packages/pulumi/pulumi/aws/versions/latest/nav
Returns a summary by default. The full tree can be hundreds of kB for large providers, so prefer targeted search: append "?q=<query>&depth=full" to filter by resource/function title or token (for example "?q=bucket&depth=full"). Only request the full nav without a query if you actually need to enumerate every resource.
Other endpoints:
- Overview and getting started: https://api.pulumi.com/api/registry/packages/pulumi/pulumi/aws/versions/latest/readme
- Installation and configuration: https://api.pulumi.com/api/registry/packages/pulumi/pulumi/aws/versions/latest/installation
- Per-resource/function docs: https://api.pulumi.com/api/registry/packages/pulumi/pulumi/aws/versions/latest/docs/{token}?lang={lang}
Replace {token} with the percent-encoded token from the nav response (for example aws:s3/bucket:Bucket).
Replace {lang} with typescript, python, go, csharp, java, or yaml.
Fetch the installation endpoint above for the correct setup steps — install instructions vary between native providers, bridged Terraform providers, and component packages.
Help me get started using this provider. Show me a complete Pulumi program that provisions a common resource, including all necessary configuration and imports.
Viewing docs for AWS v7.31.0
published on Tuesday, May 26, 2026 by Pulumi
published on Tuesday, May 26, 2026 by Pulumi
A simple voting app that uses MySQL for data storage and a Python Django app for the frontend.
The example shows how easy it is to deploy containers into production and to connect them to one another. Since the example defines a custom container, Pulumi does the following:
- Builds the Docker image
- Provisions AWS Container Registry (ECR) instance
- Pushes the image to the ECR instance
- Creates a new ECS task definition, pointing to the ECR image definition
Prerequisites
Deploying and running the program
Create a new stack:
$ pulumi stack init aws-py-django-voting-appSet the AWS region, the usernames and passwords for a set of accounts the project uses, and a random 50-character string to serve as Django’s secret key:
$ pulumi config set aws:region us-west-2 $ pulumi config set sql-admin-name <NAME> $ pulumi config set sql-admin-password <PASSWORD> --secret $ pulumi config set sql-user-name <NAME> $ pulumi config set sql-user-password <PASSWORD> --secret $ pulumi config set django-admin-name <NAME> $ pulumi config set django-admin-password <PASSWORD> --secret $ pulumi config set django-secret-key <VALUE> --secretRun
pulumi up -yto deploy changes:Updating (aws-py-django-voting-app): Type Name Status Info + pulumi:pulumi:Stack voting-app-aws-py-django-voting-app created + ├─ docker:image:Image django-dockerimage created 1 warning + ├─ aws:ec2:Vpc app-vpc created + ├─ aws:ecs:Cluster app-cluster created + ├─ aws:iam:Role app-exec-role created + ├─ aws:iam:Role app-task-role created + ├─ aws:ecr:Repository app-ecr-repo created + ├─ aws:cloudwatch:LogGroup django-log-group created + ├─ aws:ecr:LifecyclePolicy app-lifecycle-policy created + ├─ aws:iam:RolePolicyAttachment app-exec-policy created + ├─ aws:iam:RolePolicyAttachment app-access-policy created + ├─ aws:iam:RolePolicyAttachment app-lambda-policy created + ├─ aws:ec2:InternetGateway app-gateway created + ├─ aws:ec2:SecurityGroup security-group created + ├─ aws:ec2:Subnet app-vpc-subnet created + ├─ aws:ec2:Subnet extra-rds-subnet created + ├─ aws:lb:TargetGroup django-targetgroup created + ├─ aws:lb:LoadBalancer django-balancer created + ├─ aws:ec2:RouteTable app-routetable created + ├─ aws:rds:SubnetGroup app-database-subnetgroup created + ├─ aws:ec2:MainRouteTableAssociation app_routetable_association created + ├─ aws:rds:Instance mysql-server created + ├─ aws:lb:Listener django-listener created + ├─ pulumi:providers:mysql mysql-provider created + ├─ mysql:index:Database mysql-database created + ├─ mysql:index:User mysql-standard-user created + ├─ mysql:index:Grant mysql-access-grant created + ├─ aws:ecs:TaskDefinition django-site-task-definition created + ├─ aws:ecs:TaskDefinition django-database-task-definition created + ├─ aws:ecs:Service django-site-service created + └─ aws:ecs:Service django-database-service created Outputs: app-url: "django-balancer-2f4f9fe-c6e6893a1972a811.elb.us-west-2.amazonaws.com" Resources: + 31 created Duration: 4m16sView the DNS address of the instance via
pulumi stack output:$ pulumi stack output Current stack outputs (1): OUTPUT VALUE app-url django-balancer-2f4f9fe-c6e6893a1972a811.elb.us-west-2.amazonaws.comVerify that the ECS instance exists by connecting to it in a browser window.
Clean up
To clean up resources, run pulumi destroy and answer the confirmation question at the prompt.
Viewing docs for AWS v7.31.0
published on Tuesday, May 26, 2026 by Pulumi
published on Tuesday, May 26, 2026 by Pulumi