Skip to content

Commit 0a4f3ab

Browse files
committed
WIP: Splits out provider-specific parts of Beginner's Guide to CE
1 parent cd4f0b5 commit 0a4f3ab

File tree

5 files changed

+289
-0
lines changed

5 files changed

+289
-0
lines changed

docs/install-domain-namecheap.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
id: install-domain-namecheap
3+
title: Purchase a web domain at NameCheap
4+
sidebar_label: Purchase domain at NameCheap
5+
---
6+
7+
[*NB: This is a placeholder]
8+
9+
1. Navigate to [namecheap.com](https://namecheap.com/)
10+
11+
2. Type your desired domain name into the big search field.
12+
13+
3. ...
14+
15+
> 🤔 Advice: Activate two-factor authentication (2FA) for your account.
16+
17+
[Back to Overview](./install-overview.md#3-purchase-a-web-domain)

docs/install-domain-porkbun.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
id: install-domain-porkbun
3+
title: Purchase a web domain at Porkbun
4+
sidebar_label: Purchase domain at Porkbun
5+
---
6+
7+
[*NB: This is a placeholder; screenshots will be included in the pull request.]
8+
9+
1. Go to Porkbun.com.
10+
11+
2. Under Products, select Domains.
12+
13+
3. Search for a domain name if you already have a specific name in mind or you may shop by reviewing for different ending web domain extensions (the .com or .net or .xyz part of a web address) and their prices.
14+
15+
Select column headers “Registration”, “Renewal”, or “Transfer” to sort by lowest price in each column.
16+
17+
For example, let’s say you select the .space (dot space) extension because it is currently on a 1st Year Sale of US$1.11. 🤔 Advice: Pay special attention to the Renewal column, however, because that is what you will be charged every year after.
18+
Next, search if your full domain name is available to buy. Let’s say you want “mycoolhubs.space”, enter mycoolhubs in the search box and select the magnifying glass (submit search).
19+
Note from the future: Scaleway ONLY wants domains that meet these conditions, so follow them now: The domain can only contain alphanumeric characters, dots, and dashes.
20+
21+
4. When you have chosen your full web domain address, select the plus sign under sort by price to add it to your shopping cart.
22+
23+
5. Select Checkout.
24+
25+
6. At Your Cart, select Continue Create account / Login.
26+
27+
7. Under Create a New Account, type in your information to these required fields:
28+
Username, Password, Primary email address, First or Given Name, Address, Country, City, Zip / Postal, Phone Code, Phone Number
29+
Select the checkbox for You must agree to the following by checking the checkbox before continuing.
30+
You may say yes or no to awesome emails.
31+
Save your username and password somewhere.
32+
Select Create Account.
33+
34+
8. Complete your purchase. Complete the email verification step. Enter your verification code into the pop-up and then select Submit.
35+
36+
> 🤔 Advice: Activate two-factor authentication (2FA) for your account.
37+
38+
[Back to Overview](./install-overview.md#3-purchase-a-web-domain)
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
---
2+
id: install-kubernetes-digitalocean
3+
title: Setting up a DigitalOcean account and Managed Kubernetes
4+
sidebar_label: Setting up DOKS
5+
---
6+
7+
[*NB: This is a placeholder without screenshots]
8+
9+
## Create a DigitalOcean Account
10+
11+
1. Go to DigitalOcean. Select Get started. DigitalOcean (DO) “only bills for the services you use” so there is no initial startup charge.
12+
Currently DO is offering a US$200 credit for the first 60 days for new customers. Alternatively, you can get the US$200 credit AND Hubs community member Hrithik receives a small credit via his referral link. The referral is no extra cost to you. These instructions follow the referral link.
13+
14+
2. For Create your account, select Sign up with Google, Sign up with Github or Sign up with Email, your choice. These instructions will use Sign up with Email.
15+
16+
3. Enter in a required email address and password. Keep these passwords somewhere safe. Select Sign Up.
17+
18+
1. Notification to check your email for a confirmation link:
19+
20+
4. Check your email and select the confirmation link that starts with cloud.digitalocean.com/account_verification. The link logs you into your DO account. You may close the other DO page now.
21+
22+
5. On this new page, you are asked some demographic questions that you must answer before selecting Submit:
23+
1. What do you plan to build on DigitalOcean?
24+
25+
Choices are: An API, Data analytics infrastructure, Web3 or decentralized application, A website or content site, AI and machine learning, Video or livestreaming platform.
26+
> 🤔 Advice: We recommend Web3 or decentralized application
27+
2. What is your role or business type?
28+
29+
Choices are Digital agency / MSP, Freelancer or Consultant, Software company, E-commerce company, Hobbyist or Student, Other.
30+
3. What is your monthly spend on cloud infrastructure across cloud platforms? (provide an estimate)
31+
32+
Choices are $0-$50, $50-$500, $500-$1,000,$1,000-$5,000, $5,000-$10,000, $10,000-$100,000, More than $100,000.
33+
4. How many employees work at your company?
34+
35+
Choices are I work alone, 2-9, 10-99, 100-499, 500-999, 1000+
36+
5. How do you prefer to manage cloud resources?
37+
38+
Choices are: Cloud console, CLI or API, SDK, Infrastructure as Code, I’m not sure.
39+
> 🤔 Advice: We recommend I’m not sure.
40+
41+
6. For Verifying your Payment Information, select either ‘Add a Card’ or ‘Connect via PayPal’.
42+
1. If you choose Add a Card, enter your Card number, Cardholder name, Country, and Street address. Select Save and Sign Up.
43+
44+
2. If you choose Connect via PayPal, for Choose an amount, select US$5.00, US$10.00, or US$20.00.
45+
>🤔 Advice: we recommend $5.00, and select PayPal.
46+
47+
7. Once you have completed setting up your payment method, you are taken to a welcome page. Select Explore our control panel.
48+
49+
8. Create a Kubernetes cluster at DO
50+
51+
1. DO will create for you a default project called “first-project”. From the MANAGE menu, select Kubernetes.
52+
53+
2. Select Create a Kubernetes Cluster.
54+
55+
3. For Create a Kubernetes cluster, Choose a data center region, select a region geographically closest to you. For ‘Select a version’- Keep whatever is recommended.
56+
57+
Choices are in North America, Europe, Asia, and Australia.
58+
59+
4. For Choose cluster capacity, Select a scaling type, select Fixed or Autoscale.
60+
> 🤔 Advice: Fixed will help control your costs, but Autoscale will make sure that the servers are up if and when you need them. You decide: Fixed = cheaper but slightly less reliable, Autoscale = more expensive but more reliable. We are selecting Fixed in these instructions.
61+
62+
> Note: You may ignore this warning: You have reached the 3 Droplet on your account. Request increase.
63+
64+
5. For Node pool name: Change the name to something that makes sense to you.
65+
> 🤔 Advice: hcce-cluster-yoursetupreason-date
66+
6. For Machine Type: Leave selected as Basic, Regular SSD
67+
7. For Node plan: Select $24/month per node ($0.036/hour) of 4GB total RAM / 2 vCPUs / 80 GB storage (June 2024 specifications) Tip 💡Hubs Community Edition needs 3-3.5 GB RAM to run. Choosing 4 GB RAM gets you the minimum you need. If you run into too many problems, re-think this choice.
68+
> 💡Tip: DigitalOcean charges an extra $12/month for mandatory load balancing.
69+
So a $24 choice here will be $24 + $12 a month for a total of $36 a month.
70+
71+
8. For Nodes: Select the negative sign to reduce this from 3 to 1.
72+
> 🤔 Advice: One node is enough. Warning: if you increase the nodes to 2 or more, you will need to set up external storage and an external database to prevent data loss. This is beyond the capabilities of this Beginner’s Guide.
73+
74+
75+
...
76+
77+
[Back to Overview](./install-overview.md#4-set-up-an-account-and-create-a-managed-kubernetes-cluster)

docs/install-overview.md

Lines changed: 151 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,151 @@
1+
---
2+
id: install-overview
3+
title: Overview of Installling Community Edition
4+
sidebar_label: Overview of Installation
5+
---
6+
7+
[*NB: this heirarchy is not final; it's just a first pass*]
8+
9+
The exact steps you take will depend somewhat on which providers you use.
10+
11+
## Preparation
12+
13+
[*NB: as in current Beginner's Guide*]
14+
15+
## Section 1: Download stuff
16+
17+
[*NB: as in the first part of "Download stuff and open accounts"*]
18+
19+
## Section 2: Open accounts
20+
21+
### 3. Purchase a web domain
22+
23+
You need control of a domain name.
24+
Your Hubs instance can have a name like `example.com` if it is the only server on your domain.
25+
Your instance can have a name like `hubs.example.com` if you have other servers on your domain.
26+
27+
Follow the directions for one of these providers, or use an existing domain name you control.
28+
29+
* [Porkbun](./install-domain-porkbun.md)
30+
* [NameCheap](./install-domain-namecheap.md)
31+
32+
> 💡️ Your domain name service will probably show some filler at your domain name after your purchase.
33+
> This will go away when you set up new DNS records.
34+
35+
### 4: Set up an account and create a managed Kubernetes cluster
36+
37+
* [DigitalOcean](./install-kubernetes-digitalocean)
38+
* [Scaleway](./install-kubernetes-scaleway)
39+
* [AWS](./install-kubernetes-aws)
40+
41+
[*NB: "Download and Install Doctl" and "Authenticate doctl" will be merged into the DigitalOcean directions here. Other providers will have different tools, which typically won't be needed in later steps. "Connect DO" might be merged here or be its own step.*]
42+
43+
### 5. Set up SMTP email service, verify domain, & get credential.
44+
45+
There are two types of email when setting up Hubs.
46+
The first is an account where you can receive email. You probably already have one. (work email, home email, etc.). We used gMail in our testing.
47+
We call this your “admin email”. It will control your Hubs instance.
48+
49+
The second is an account to send the automatic login emails from.
50+
As many similar emails will be sent from this account, you need a setup that won't be blocked as spam.
51+
We call this your SMTP email service.
52+
53+
* [Scaleway](./install-smtp-scaleway)
54+
* [Sendlayer](./install-smtp-sendlayer)
55+
* [GMail](./install-smtp-gmail)
56+
57+
### 6. Domain verification and adding DNS Records
58+
59+
In this step, you will add in the SPF, DKIM, MX, and DMARC records for your SMTP email service in your web domain.
60+
61+
> 💡 Here we assume you use the DNS service of your domain name service.
62+
> You can use a different DNS service if you want to.
63+
64+
* [Porkbun](./install-mx-porkbun)
65+
* [NameCheap](./install-mx-namecheap)
66+
67+
### 7. Download and install Kubectl
68+
69+
[*NB: as in "Download and install Kubectl"*]
70+
71+
> ☑️ To verify that kubectl is configured correctly, at the command line type
72+
> ```shell
73+
> kubectl cluster-info
74+
> ```
75+
> The output should resemble
76+
> ```angular2html
77+
> Kubernetes control plane is running at https://127.0.0.1:66666
78+
> CoreDNS is running at https://127.0.0.1:66666/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy
79+
>
80+
> To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.
81+
> ```
82+
83+
## Section 3: Download Hubs and Upload it to your cluster
84+
85+
### 8. Download Hubs Community Edition (a.k.a. Hubs CE and HCCE)
86+
87+
[*NB: as in "Download Hubs CE"*]
88+
89+
### 9. Upload your Hubs to your cluster
90+
91+
[*NB: as in "Upload your Hubs"*]
92+
93+
> ☑️ Now is a good time to check that your SMTP email service is reachable from your Kubernetes cluster. See [Checking that my SMTP is reachable from my Kubernetes cluster](./troubleshooting-smtp)
94+
95+
### 10. Add new A records to DNS
96+
97+
This step will be very similar to "Domain verification and adding DNS Records" above. You will add four more new A records. You will copy from your Kubernetes hoster and paste into your DNS provider/domain name provider.
98+
99+
* [Porkbun](./install-dns-porkbun)
100+
* [NameCheap](./install-dns-namecheap.md)
101+
102+
> ☑️ You can verify that the new DNS records are in use.
103+
> Type your domain name into your Web browser.
104+
> You should get a warning that the connection is insecure.
105+
> **That's great!** It means you're connecting to your cluster, but the connection isn't secure yet.
106+
> The next step will make your connection secure.
107+
108+
### 11. Generate certificates
109+
110+
[*NB: as in "Generate certificates"*]
111+
112+
## Section 4: Kick the tires and light the fires
113+
114+
### 12. Configure Firewall
115+
116+
Now you have to whitelist a few ports so that the voice chat and screen share/video share work properly.
117+
118+
* [DigitalOcean](./install-firewall-digitalocean)
119+
* [Scaleway](./install-firewall-scaleway)
120+
* [AWS](./install-firewall-aws)
121+
122+
> ☑️ To check that your firewall is correctly configured, type your domain name into your Web browser.
123+
> You should see the root page of your Hubs instance, without any warning about an insecure connection.
124+
> [*NB: insert screenshot here*]
125+
126+
### 13. Your Hubs is up!
127+
128+
Go to your domain and log in.
129+
130+
Visit What's next? for tips on room settings, importing scenes, and backups.
131+
132+
### 14. Got questions?
133+
134+
Check our FAQs. Also, our community Discord is standing by.
135+
136+
## Sources
137+
138+
* Hrithik Tiwari’s original DigitalOcean instructions.
139+
* [Video] DigitalOcean Quick Start with Hrithik Tiwari - Community Edition Setup Session - April 3, 2024
140+
* Using Sendgrid for SMTP
141+
* [Video] Doctl for Windows installation video
142+
* [Video] Visual Studio code tutorial
143+
* [Video] Config file tutorial from Stan
144+
~~* Installing WSL in Windows - didn’t use WSL after all~~
145+
~~* Username and password advice for Linux - didn’t use after all~~
146+
* Using SendGrid for SMTP- Tutorial from Fabien
147+
* Brevo How to Authenticate your domain
148+
* Setting up AWS SES
149+
* Community Edition Case Study: Quick Start on Google Cloud with AWS Services
150+
151+

website/sidebars.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,12 @@
4444
"content-guidelines",
4545
"intro-behavior-graphs"
4646
],
47+
"Install Community Edition": [
48+
"install-overview",
49+
"install-domain-porkbun",
50+
"install-domain-namecheap",
51+
"install-kubernetes-digitalocean"
52+
],
4753
"For Developers": [
4854
"system-overview",
4955
"build-custom-client",

0 commit comments

Comments
 (0)