@ -55,16 +55,6 @@ The build servers will sync the blog content with webservers each time the blog
## How does it work?
## How does it work?
### Create a new account on MyJekyllBlog
```mermaid
sequenceDiagram
User ->>+Web Panel: Register with name, email, password
Web Panel->>+Database: Create user account for panel
Web Panel->>+Gitea Minion: Create Gitea User
Web Panel->>-User: Log the user into their account
```
### Deploy a Jekyll blog
### Deploy a Jekyll blog
```mermaid
```mermaid
@ -76,10 +66,53 @@ sequenceDiagram
Build Server-->+Web Server: Deploy website
Build Server-->+Web Server: Deploy website
```
```
### Create a new post a Jekyll blog
## Installation Guide
## Installation Guide
This guide will follow my process of installing the software to run on `mds-stage.com` and serve blogs on `mds-stage-blog.com`.
I need at least one of each server type. I will, however, use two WebServers and have one on the west coast and another on the east coast. I will need six servers, and I will name them `panel`, `store`, `build`, `certbot`, `web-west`, `west-east`.
I want the database server running on `store` not to be exposed to the Internet at large, and I will use the private networking feature of my VPS provider to get private IPs for `panel`, `store`, `build`, and `certbot`. This means I also need to have all of those machines running in the same datacenter.
Once I have these machines provisioned I lay out the information about them in the table above. I will need this information to begin writing the configuration file.
For each of these machines, I update DNS records so that the domain maps to the public IP address for each machine.
Additionally, I add two DNS records for `*.mds-stage-blog.com`, one A record with `` and another A record with ``. This maps all sub-domains of `mds-stage-blog.com` to the web servers so that they may serve the blogs to people on the Internet.
Before proceeding from this section, review the section checklist to ensure you have completed all item.
| Provision machine for panel, build, store, certbot |
| Provision one or more machines for webservers |
| Create table with your machine information |
| Add DNS records for each machine |
| Add wildcard DNS record for each WebServer |
### Step 1: Machine Selection
### Step 1: Machine Selection
First, I should layout the servers. At least one panel, build, store and certbot server will be needed to run the platform. One or more webservers will be needed to serve blogs.
First, I should layout the servers. At least one panel, build, store and certbot server will be needed to run the platform. One or more webservers will be needed to serve blogs.