1. Packages
  2. AWS
  3. How-to Guides
  4. Static Website Hosted on AWS S3
AWS v6.55.0 published on Monday, Oct 7, 2024 by Pulumi

Static Website Hosted on AWS S3

aws logo
AWS v6.55.0 published on Monday, Oct 7, 2024 by Pulumi

    View Code Deploy this example with Pulumi

    The component version of aws-js-s3-folder. For a detailed walkthrough of this example, see Tutorial: Pulumi Components.

    Deploying and running the program

    Note: some values in this example will be different from run to run. These values are indicated with ***.

    1. Create a new stack:

      $ pulumi stack init website-component-testing
      
    2. Set the AWS region:

      $ pulumi config set aws:region us-west-2
      
    3. Restore NPM modules via npm install or yarn install.

    4. Run pulumi up to preview and deploy changes. After the preview is shown you will be prompted if you want to continue or not.

      $ pulumi up
      Previewing update of stack 'website-component-testing'
      Previewing changes:
      ...
      
      Updating stack 'website-component-testing'
      Performing changes:
      
          Type                       Name                                                  Status      Info
      +   pulumi:pulumi:Stack        aws-js-s3-folder-component-website-component-testing  created
      +   └─ examples:S3Folder       pulumi-static-site                                    created
      +      ├─ aws:s3:Bucket        pulumi-static-site                                    created
      +      ├─ aws:s3:BucketPolicy  bucketPolicy                                          created
      +      ├─ aws:s3:BucketObject  favicon.png                                           created
      +      └─ aws:s3:BucketObject  index.html                                            created
      
      ---outputs:---
      info: 6 changes performed:
          + 6 resources created
      Update duration: ***
      
      Permalink: https://app.pulumi.com/***
      
    5. To see the resources that were created, run pulumi stack output:

      $ pulumi stack output
      Current stack outputs (2):
          OUTPUT                                           VALUE
          bucketName                                       s3-website-bucket-***
          websiteUrl                                       ***.s3-website-us-west-2.amazonaws.com
      
    6. To see that the S3 objects exist, you can either use the AWS Console or the AWS CLI:

      $ aws s3 ls $(pulumi stack output bucketName)
      2018-04-17 15:40:47      13731 favicon.png
      2018-04-17 15:40:48        249 index.html
      
    7. Open the site URL in a browser to see both the rendered HTML and the favicon:

      $ pulumi stack output websiteUrl
      ***.s3-website-us-west-2.amazonaws.com
      
    8. To clean up resources, run pulumi destroy and answer the confirmation question at the prompt.

    aws logo
    AWS v6.55.0 published on Monday, Oct 7, 2024 by Pulumi