Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat node revamp deployment #27984

Open
wants to merge 7 commits into
base: main
Choose a base branch
from

Conversation

BryanF1nes
Copy link
Member

Because

This PR is a first pass for the deployment lesson regarding the Node revamp that is currently under work.

This PR

  • This PR removes references of mongoDB which will not be used in the node revamp
  • This PR updates information with other possible PaaS services available for students
  • This PR adds a note to give users an ability to reduce cost when using PaaS

Issue

Closes #27870

Additional Information

I'm submitting this PR primarily to have a review on topics down near the bottom where I include information regarding other PaaS service providers such as (Koyeb and Neon).

Pull Request Requirements

  • I have thoroughly read and understand The Odin Project curriculum contributing guide
  • The title of this PR follows the location of change: brief description of change format, e.g. Intro to HTML and CSS lesson: Fix link text
  • The Because section summarizes the reason for this PR
  • The This PR section has a bullet point list describing the changes in this PR
  • If this PR addresses an open issue, it is linked in the Issue section
  • If any lesson files are included in this PR, they have been previewed with the Markdown preview tool to ensure it is formatted correctly
  • If any lesson files are included in this PR, they follow the Layout Style Guide

@github-actions github-actions bot added the Content: NodeJS Involves the NodeJS course label May 16, 2024
Copy link
Member

@01zulfi 01zulfi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@BryanF1nes Heyy, can you rename and move this new file to nodeJS/express/deployment.md

@01zulfi 01zulfi added the Project Node Revamp Issues/PRs related to the Node Revamp project label May 18, 2024
Comment on lines +106 to +110
##### Fly.io: Free Plan

- You can host three apps for free before you need to start paying.
- Fly.io waives monthly invoices that total less than $5 USD. So, although it may look like
you are being charged, it's very unlikely that you will exceed $5 and actually have to pay.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could the verbiage for this part be changed to match the updated text in #28036 (inc. pending changes from comments)? Just the hobby plan bit, not the legacy hobby plan bit.

Suggested change
##### Fly.io: Free Plan
- You can host three apps for free before you need to start paying.
- Fly.io waives monthly invoices that total less than $5 USD. So, although it may look like
you are being charged, it's very unlikely that you will exceed $5 and actually have to pay.
##### Fly.io: Hobby Plan
- New customers get a one-time $5 free trial credit to test Fly.io at no cost. The credit will only start being used if you exceed the free resource allowance, and once it's been used up, you will be automatically placed on the $5/month Hobby plan.
- The longevity of your free trial credit depends on how many resources you consume. More complex apps with more traffic may consume all free resources within a month, whereas simpler apps may last longer.

#### Neon

- Database branching
-
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rogue line?

Suggested change
-

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yea basically a placeholder to indicate more information should probably go here

@MaoShizhong
Copy link
Contributor

@01zulfi What do you think about the Neon bit? The other deployment options seem capable of hosting an Express server, but Neon looks more like DB hosting? i.e. Deploy Express app elsewhere, and connect to a postgress DB hosted on Neon.

The current placement makes it look like it's the same kind of deployment as the others (can host a full Express server). Wondering if separating it out to a new section for DB hosting would be more appropriate.

@01zulfi
Copy link
Member

01zulfi commented May 30, 2024

@MaoShizhong I was hoping Neon's description would make it apparent to the learners its for database hosting. If you feel we need to add a new database hosting section, I'm onboard.

@MaoShizhong
Copy link
Contributor

I think splitting between Express server hosting and DB hosting sections will be very sensible. A common problem here is people not understanding that things like Netlify, which were used in the React course, can't be used for our server deployment despite all the description and access to docs.

I think it should be made very clear by the structure that there are two separate types of deployment options listed. Also a slight a11y boost separating DB hosting to its own heading.

@01zulfi
Copy link
Member

01zulfi commented May 31, 2024

Okay sure, we can split it. Just one minor nit I'd have, so many of these services have both server hosting and database hosting though. Do we then have two separate entries for these services?

Edit: or we could just mention in the first bullet point of each PaaS something like: "This PaaS supports (both server and database | server | database) hosting.."

@MaoShizhong
Copy link
Contributor

To be fair, a first bullet point making it clear what's supported e
G.

Can host servers and databases.

Can host databases only.

Would be fine.

Though having said that, with the addition of Koyeb, we'd have 5 server+db PaaS options with free tiers + Heroku (do we even need to have Heroku listed anymore since there's no free tier?). Would we need to also add Neon to the mix given it's a DBaasS only?

@BryanF1nes
Copy link
Member Author

I'm glad you mentioned Heroku, I really don't see the point of having it listed anymore. But I really do like the idea some where near the top where each service is listed just like a disclaimer if you will that will say can host databases and servers etc.

@MaoShizhong
Copy link
Contributor

Basically just some explicit way of showing what each PaaS is capable of/is for, whether that's splitting into "Server + DB hosting" and "DB-only hosting" sections, or each individual listing clearly showing what can be hosted on it. No strong feelings either, just that it should be explicit what each PaaS is for (since Neon is definitely not like the others).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Content: NodeJS Involves the NodeJS course Project Node Revamp Issues/PRs related to the Node Revamp project
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update Lesson: Deployment
3 participants