Skip to content
This repository has been archived by the owner on Jun 13, 2022. It is now read-only.
/ nook_book Public archive
forked from versus-systems/nook_book

An Mnesia-based application for the training class Mnesia: Concept to Reality

Notifications You must be signed in to change notification settings

arthirad/nook_book

 
 

Repository files navigation

NookBook

This is the training project for the "Mnesia: Concept to Reality" course for ElixirConf 2020. The branches and commits to the "main" branch correspond to details in the provided Google Document. The outline for those steps are:

Build the Nook Book Application

  • Step 1: Project Setup
  • Step 2: Mnesia Schema Setup
  • Step 3: Table Setup
  • Step 4: Create a Repo for Easier Mnesia Access
  • Step 5: Expand the GenericCache Module
  • Step 6: A Simple API Client
  • Step 7: Create a Simple Cache
  • Step 8: Create a LiveView for the Application
  • Step 9: Create a Controller for Our Images
  • Step 10: Update Our Router
  • Step 11: Build Out the HTML
  • Step 12: Setup Local Multi-Node Mnesia

Deploy Nook Book to AWS

  • Step 13: Setup Release
  • Step 14: Setup Circle
  • Step 15: Setup AWS
  • Step 16: Setup Terraform
  • Step 17: Implement Security Group
  • Step 18: Update Release Files
  • Step 19: Finish Infrastructure Setup
  • Step 20: Use Terraform Output for Hosts
  • Step 21: Setup Libcluster
  • Step 22: Use Terraform Output for SSH Config
  • Step 23: Build and Download Release
  • Step 24: Upload and Run the Release

Guide specific values that need to be changed

  • "name" variable near the top of "config/releases.exs"
  • hosts: array in the libcluster config in "config/releases.exs"
  • "name" default value at the top of "infrastructure/main.tf"
  • "sshkey" default value at the top of "infrastructure/output.tf"

About

An Mnesia-based application for the training class Mnesia: Concept to Reality

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Elixir 67.4%
  • CSS 20.0%
  • HCL 6.3%
  • JavaScript 4.1%
  • Shell 1.2%
  • HTML 1.0%