Hướng dẫn heroku mongodb not working - heroku mongodb không hoạt động

Nội dung chính ShowShow

  • Một cheatsheet với tất cả các lệnh bạn cần
  • Về hướng dẫn này
  • Thiết lập Procfile của bạn
  • Thiết lập dự án Heroku của bạn
  • Đẩy Procfile của bạn đến Heroku
  • Quay một máy chủ
  • Thiết lập cơ sở dữ liệu sản xuất của bạn
  • Định cấu hình cài đặt cổng của bạn
  • Đẩy mã của bạn lên GitHub:
  • Đẩy mã của bạn lên Heroku:
  • Đẩy các biến .ENV của bạn vào Heroku (nếu bạn có bất kỳ):
  • Đó là nó, hãy kiểm tra nếu nó hoạt động!
  • Ứng dụng của bạn có trên web! 🔥🙌🎊🎉🥂🔥🙌🎊🎉🥂
  • Ôi không! Bạn đang xem trang này?
  • Tải lên GitHub
  • Triển khai đến Heroku
  • Sửa lỗi ứng dụng Heroku
  • Thêm MongoDB
  • Kiểm tra
  • Sự kết luận
  • Làm thế nào để bạn triển khai Node JS MongoDB trên Heroku?
  • Tôi có thể triển khai MongoDB trên Heroku không?
  • Làm thế nào triển khai API Node JS cho Heroku?
  • Tôi nên triển khai MongoDB ở đâu?

Một cheatsheet với tất cả các lệnh bạn cần

Hình ảnh từ Heroku.com

Về hướng dẫn này

Đây không phải là một hướng dẫn đầy đủ với các giải thích về những gì đang xảy ra ở mỗi bước.

Đây là một trò gian lận để phục vụ như một tài liệu tham khảo của tất cả các lệnh bạn sẽ cần khi đẩy ứng dụng Node.js / MongoDB / Mongoose của bạn vào Heroku.

Lưu ý: Hướng dẫn này giả định rằng bạn đã thiết lập Git. Nếu bạn không có, hãy làm theo hướng dẫn của tôi cách thiết lập Git cho một dự án hiện có.

Thiết lập Procfile của bạn

Thiết lập dự án Heroku của bạnProcfile, that lets Heroku know how to run your website. Go to your project repo and create that file in the root of the repo:

$ cd ~/projects/path-to-your-project-folder
$ touch Procfile

Đẩy Procfile của bạn đến Heroku

web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead

Thiết lập dự án Heroku của bạn

Đẩy Procfile của bạn đến Heroku

Quay một máy chủ

Thiết lập cơ sở dữ liệu sản xuất của bạn

$ heroku create unique-project-name

Định cấu hình cài đặt cổng của bạn

$ git remote -v

Đẩy mã của bạn lên GitHub:

$ git remote -v 
heroku https://git.heroku.com/unique-project-name.git (fetch)
heroku https://git.heroku.com/unique-project-name.git (push)
origin :nsafai/Your-Git-Repo.git (fetch)
origin :nsafai/Your-Git-Repo.git (push)

Đẩy Procfile của bạn đến Heroku

$ git add . 
$ git commit -m “setting up to push to Heroku”
$ git push heroku master

Quay một máy chủ

Thiết lập cơ sở dữ liệu sản xuất của bạn

$ heroku ps:scale web=1

Thiết lập cơ sở dữ liệu sản xuất của bạn

Định cấu hình cài đặt cổng của bạn

$ heroku addons:create mongolab:sandbox

Đẩy mã của bạn lên GitHub:app.js or server.js file has the correct line of code to connect to your production DB:

// app.js or server.js// connect Mongoose to your DB
var mongoose = require(‘mongoose’);
mongoose.connect(process.env.MONGODB_URI || 'mongodb://localhost/your-app-name');

Đẩy mã của bạn lên Heroku: you may need to install the dotenv npm package for the above to work correctly:

  • Đẩy các biến .ENV của bạn vào Heroku (nếu bạn có bất kỳ):
  • Đó là nó, hãy kiểm tra nếu nó hoạt động!app.js / server.js file:
web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
1

Định cấu hình cài đặt cổng của bạn

Đẩy mã của bạn lên GitHub:app.js file (or sometimes, bin/www/server.js file), change your app.listen to the following:

web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
0

Đẩy mã của bạn lên GitHub:

web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
1

Đẩy mã của bạn lên Heroku:

web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
2

Đẩy các biến .ENV của bạn vào Heroku (nếu bạn có bất kỳ):

Đó là nó, hãy kiểm tra nếu nó hoạt động!

web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
3

Ứng dụng của bạn có trên web! 🔥🙌🎊🎉🥂🔥🙌🎊🎉🥂

Đó là nó, hãy kiểm tra nếu nó hoạt động!

Ứng dụng của bạn có trên web! 🔥🙌🎊🎉🥂🔥🙌🎊🎉🥂

web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
4

Ứng dụng của bạn có trên web! 🔥🙌🎊🎉🥂🔥🙌🎊🎉🥂

Ôi không! Bạn đang xem trang này?

Tải lên GitHub

Triển khai đến Heroku

web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
5

Sửa lỗi ứng dụng Heroku

Thêm MongoDB

Kiểm tra

Sự kết luận

Làm thế nào để bạn triển khai Node JS MongoDB trên Heroku?

  1. Tôi có thể triển khai MongoDB trên Heroku không?
  2. Xóa tệp
    web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
    9 có thể đi kèm với nó. Một tệp
    web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
    9 khác sẽ được tạo cho bạn trong quá trình bạn đẩy sang GitHub.

Vì vậy, không có gì khó chịu, chúng ta hãy bị bẩn tay.

Tải lên GitHub

Tải lên hoặc đẩy lên GitHub cũng dễ dàng như dùng bữa ăn yêu thích của bạn. Vui lòng kiểm tra bất kỳ liên kết nào sau đây để được hướng dẫn về cách đẩy dự án của bạn từ máy địa phương đến GitHub

  1. Thêm một dự án hiện có vào GitHub bằng dòng lệnh

  2. Thêm một dự án hiện có vào GitHub bằng dòng lệnh

Triển khai đến Heroku

Tôi sẽ làm cho quá trình này dễ dàng đến mức bạn sẽ chỉ mỉm cười trong suốt.

  • Hãy bắt đầu bằng cách tạo một tài khoản trên Heroku

Nếu bạn đã tạo một tài khoản, bạn có thể đã được nhắc tạo một ứng dụng (nghĩa là một thư mục nơi ứng dụng của bạn sẽ được lưu trữ). Tạo ra nó. Của tôi được đặt tên là

$ heroku create unique-project-name
1
  • Truy cập bảng điều khiển của ứng dụng của bạn
  • Chọn phương thức triển khai
    $ heroku create unique-project-name
    2
  • Tìm kiếm và chọn repo
  • Nhấp vào
    $ heroku create unique-project-name
    3
  • Chọn chi nhánh bạn muốn triển khai (trong trường hợp của riêng tôi, đó là nhánh
    $ heroku create unique-project-name
    4)
  • Bật triển khai tự động bằng cách nhấp vào nút

    $ heroku create unique-project-name
    5 như trong hình trên.
  • Nhấp vào nút

    $ heroku create unique-project-name
    6 trong triển khai thủ công

Chúng tôi sẽ không phải làm tất cả những điều này để triển khai tiếp theo

  • Bây giờ bạn có một nút cho bạn biết "xem trang web" sau khi bản dựng hoàn thành. Nhấp vào nó. (Điều này sẽ mở ứng dụng của bạn trong một tab mới)

Ohhh nooooo !!!! MỘT LỖI? LỖI ỨNG DỤNG?

Vâng, nó chỉ là một vấn đề nhỏ. Một cái gì đó bạn không bao giờ nên quên làm trong khi triển khai. Hầu hết các dịch vụ lưu trữ sẽ yêu cầu nó

Sửa lỗi ứng dụng Heroku

Quay trở lại thư mục gốc của dự án của bạn

  • Tạo một tệp và đặt tên nó
    $ heroku create unique-project-name
    7 (nó không có phần mở rộng)
  • Trong tệp, nhập phần sau
web: npm start// note if you're not using npm, you can try something like 'web: node app.js' instead
6

Nhập chế độ FullScreenen EXIT Mode FullScreen

Điều này hướng Heroku đến tệp máy chủ (

$ heroku create unique-project-name
8) là điểm nhập của ứng dụng. Nếu máy chủ của bạn ở trong một tệp khác, vui lòng sửa đổi theo yêu cầu
  • Lưu các tập tin
  • Đẩy các thay đổi mới vào GitHub
  • Đợi 2 đến 5 phút để Heroku tự động phát hiện các thay đổi trong repo GitHub của bạn và thực hiện các thay đổi trên ứng dụng.
  • Bây giờ bạn có thể làm mới trang lỗi đó và xem công việc khó khăn của bạn đang trả hết tiền

Thêm MongoDB

Bạn phải nhận thấy rằng các tuyến khác không hoạt động. Vâng, đó là bởi vì chúng tôi không bao gồm cơ sở dữ liệu của chúng tôi.

Hãy nhớ rằng URL vào cơ sở dữ liệu của chúng tôi nằm trong tệp

$ heroku create unique-project-name
9 của chúng tôi. Nhưng tệp
$ heroku create unique-project-name
9 của chúng tôi không được bao gồm trong dự án của chúng tôi trên GitHub sau khi chúng tôi đẩy nó. Vì vậy, chúng tôi phải trực tiếp thêm URL MongoDB vào ứng dụng Heroku của chúng tôi.

Hãy làm điều đó ...

  • Điều hướng đến các cài đặt của ứng dụng của bạn
    $ git remote -v
    1
  • Cuộn xuống phần
    $ git remote -v
    2
  • Thêm khóa và giá trị của cơ sở dữ liệu của bạn

Đó là tất cả!!! Ứng dụng của bạn sẽ hoạt động tốt ngay bây giờ ...

Kiểm tra

Cách dễ nhất để kiểm tra nếu nó hoạt động là thử điểm cuối đăng nhập

Của tôi đã làm việc!

Sự kết luận

Chúng tôi bắt đầu bằng cách nhân bản một dự án từ hướng dẫn cuối cùng của chúng tôi. Tiếp theo, tôi chỉ cho bạn cách đẩy một dự án vào GitHub. Sau đó, chúng tôi đã tạo ra một ứng dụng Heroku nơi chúng tôi đã tổ chức dự án từ GitHub một cách dễ dàng. Cuối cùng, chúng tôi đã thêm URL cơ sở dữ liệu của chúng tôi vào ứng dụng và ứng dụng của chúng tôi hoạt động hoàn hảo giống như nó hoạt động tại địa phương.

Tôi hy vọng bạn đã tham gia vào từng chút của hướng dẫn này vì tôi đã thích trong khi tạo ra nó.

Hẹn gặp lại các bạn trong hướng dẫn tiếp theo của tôi.

Làm thế nào để bạn triển khai Node JS MongoDB trên Heroku?

Nếu bạn không có, hãy làm theo hướng dẫn của tôi cách thiết lập Git cho một dự án hiện có ....

Thiết lập Procfile của bạn. ....

Thiết lập dự án Heroku của bạn. ....

Đẩy Procfile của bạn đến Heroku. ....

Quay một máy chủ. ....

Thiết lập cơ sở dữ liệu sản xuất của bạn. ....

Đẩy mã của bạn lên GitHub: ....

Đẩy mã của bạn lên Heroku: ...

Đẩy các biến .ENV của bạn đến Heroku (nếu bạn có bất kỳ):.

Tôi có thể triển khai MongoDB trên Heroku không?

MongoDB Atlas tích hợp dễ dàng với các ứng dụng Heroku.Tất cả những gì bạn cần làm là đặt chuỗi kết nối của Atlas Cluster thành biến cấu hình Heroku.. All you need to do is set your Atlas cluster's connection string to a Heroku config variable.. All you need to do is set your Atlas cluster's connection string to a Heroku config variable.

Làm thế nào triển khai API Node JS cho Heroku?

Triển khai nút ....

Prerequisites..

Overview..

Tuyên bố phụ thuộc ứng dụng ..

Chỉ định phiên bản của nút ..

Chỉ định một tập lệnh bắt đầu ..

Xây dựng ứng dụng của bạn và chạy nó cục bộ ..

Làm thế nào để giữ xây dựng các hiện vật ra khỏi git ..

Triển khai ứng dụng của bạn cho Heroku ..

Tôi nên triển khai MongoDB ở đâu?

5 cách khác nhau để triển khai cơ sở dữ liệu miễn phí với MongoDB Atlas...

Sử dụng UI ATLAS Web để triển khai cụm ..

Sử dụng MongoDB CLI để triển khai một cụm ..

Sử dụng API Atlas Admin để triển khai cụm ..

Sử dụng Hashicorp Terraform để triển khai một cụm ..

Sử dụng AWS CloudFormation để triển khai một cụm ..

Conclusion..