Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Overview

This page documents the steps and tools needed to build the Voices in Biotech Project. Many of these will be broadly applicable to other Voices projects.

Software:

The Voices project uses the following software components

  1. Strapi (a headless CMS)

  2. Postgres (database holding site data)

  3. Gatsby (static site generator)

  4. Apache (Webserver for admin site)

Strapi and Gatsby are both handled in repositories. Science-history-web is the public facing Gatsby code and science-history-api is the private Strapi code.

Currently the git repos are locked and only accessible via an ssh key.

All of these components are used on the server and are automatically set up with the ansible command creates_voices.yml see the Ansible README for command details.

AWS Services:

The Voices project uses the following AWS services to manage and run the site

  1. EC2 (server to run the above software)

  2. S3 (Image hosting and static website component hosting)

  3. Cloudfront (used to support https access to S3 sites)

  4. Amazon Certificate Manager (for SSL certificates)

A key issue is that the Voices project is managed separately. See the AWS page for details on switching accounts to the Community History Project account.

Setup:

Create S3 Bucket for Website

This follows instructions from (https://docs.aws.amazon.com/AmazonS3/latest/dev/HowDoIWebsiteConfiguration.html) which detail steps from the console.

  1. Create an S3 bucket with the name of the site (i.e. voices.sciencehistory.org)

  2. Under properties to Static Website Hosting to “Use this Bucket to Host a Website”

    1. The index document should be index.html

    2. The error document should be 404.html

  3. Under Permissions make sure Block Public Access (and all subsections) are set to Off

  4. In Bucket Policy under Permissions follow the example under Step 2 (https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteAccessPermissionsReqd.html) using our bucket name instead of Example

Import SSL Cert

This should only need to be done when we renew our SSL certs or if we change them. We are not using Amazon’s certificate creation service so we will need to import ours after making some changes to the format to work with AWS.

Editing Certificates

  • No labels