Triển khai ứng dụng nodejs trên aws ec2

Bất kỳ ứng dụng nào chúng tôi phát triển không thể chỉ ngồi trên máy cục bộ của chúng tôi và phải được triển khai ở đâu đó để người khác truy cập và đám mây có vẻ như là một lựa chọn lý tưởng và tiết kiệm chi phí để thực hiện điều đó. Vì vậy, trong bài viết này, chúng tôi sẽ lấy một ví dụ về nhà cung cấp dịch vụ đám mây phổ biến nhất, đó là AWS và tìm hiểu cách triển khai ứng dụng NodeJS với MongoDB làm cơ sở dữ liệu trên phiên bản AWS EC2

Trong bài viết này, chúng tôi sẽ triển khai ứng dụng mà chúng tôi đã xây dựng trong Xác thực người dùng trong NodeJS bằng Passport. bài viết js

Mục lục

điều kiện tiên quyết

Trước khi chúng tôi bắt đầu, hãy đảm bảo tải xuống hoặc cài đặt các phần mềm sau

  • Tài khoản bậc miễn phí AWS
  • PuTTY – ứng dụng khách SSH và telnet miễn phí (nếu bạn đang sử dụng windows, nếu không thì bất kỳ ứng dụng khách SSH nào khác mà bạn chọn)

Khởi chạy phiên bản AWS EC2 mới

Hãy bắt đầu bằng cách đăng nhập vào bảng điều khiển AWS. Sau khi đăng nhập, chúng tôi có thể tìm kiếm EC2 trong thanh tìm kiếm và chọn tùy chọn đầu tiên. Bạn sẽ được chào đón với bảng điều khiển ec2 như hình bên dưới

Triển khai ứng dụng nodejs trên aws ec2

Từ đây, chúng ta có thể khởi chạy một phiên bản mới bằng cách nhấp vào nút khởi chạy phiên bản màu cam ở giữa, nút này sẽ đưa bạn đến màn hình tiếp theo như hình bên dưới

Triển khai ứng dụng nodejs trên aws ec2

Vì vậy, ở đây chúng tôi có tất cả các tùy chọn mặc định được chọn cho chúng tôi, đủ điều kiện cho bậc miễn phí, chúng tôi sẽ để nguyên các tùy chọn này và chỉ đặt tên mà chúng tôi chọn cho phiên bản như được hiển thị ở trên. Vì vậy, ở đây chúng tôi đã chọn AWS linux t2 64 bit. trường hợp vi mô. Nếu chúng tôi cuộn xuống thêm một chút, chúng tôi sẽ thấy các tùy chọn khác bên dưới

Triển khai ứng dụng nodejs trên aws ec2

Ở đây chúng tôi cũng sẽ để lại tất cả các tùy chọn như nó là tốt. Nhưng trên cùng, chúng tôi có một tùy chọn cặp khóa mà chúng tôi sẽ phải tạo nếu chúng tôi không có bất kỳ cặp khóa hiện có nào. Chúng tôi sử dụng cặp khóa này để kết nối với phiên bản EC2 của chúng tôi. Vì vậy, hãy nhấp vào tạo cặp khóa mới và bạn sẽ nhận được màn hình bên dưới

Triển khai ứng dụng nodejs trên aws ec2

Đặt tên cho cặp khóa của bạn như được hiển thị. Bây giờ nếu bạn đang sử dụng windows, chúng tôi sẽ sử dụng putty để kết nối với nó và để làm được điều đó, chúng tôi sẽ cần cặp khóa ở định dạng ppk nếu không bạn có thể tải xuống ở định dạng pem để kết nối bằng OpenSSH. Bây giờ, khi nhấp vào Tạo cặp khóa, một tệp sẽ được tải xuống, bạn sẽ phải lưu tệp đó vì nó sẽ được sử dụng để kết nối với phiên bản EC2

Bây giờ mọi thứ đã hoàn tất, chúng ta có thể nhấp vào nút Khởi chạy phiên bản để khởi chạy phiên bản AWS EC2 của mình. Khi chúng tôi chuyển đến màn hình phiên bản của mình, chúng tôi sẽ thấy trạng thái sau trước khi thử kết nối với nó

Triển khai ứng dụng nodejs trên aws ec2

Kết nối với phiên bản AWS EC2

Bây giờ để kết nối với phiên bản AWS EC2 của chúng tôi, hãy nhấp vào ID phiên bản và nhấp vào nút kết nối trên màn hình tiếp theo. Bây giờ chúng ta sẽ thấy màn hình bên dưới

Triển khai ứng dụng nodejs trên aws ec2

Màn hình này hiển thị hướng dẫn mà chúng tôi phải làm theo để kết nối với phiên bản AWS EC2 của chúng tôi. Vì vậy, bây giờ chúng ta hãy mở putty

Triển khai ứng dụng nodejs trên aws ec2

Ở đây, bên dưới tên máy chủ, chúng tôi sẽ phải sao chép, dán DNS công khai được cung cấp trên màn hình trước đó ở điểm 4 hoặc chúng tôi cũng có thể dán địa chỉ IPv4 công khai của phiên bản EC2. Sau đó, trên cùng một màn hình trong danh mục, điều hướng đến Kết nối–>SSH–>Auth và chúng tôi sẽ nhận được màn hình bên dưới

Triển khai ứng dụng nodejs trên aws ec2

duyệt đến cặp khóa mà chúng tôi đã tạo và lưu trong máy của mình và nhấp vào mở. Bây giờ, khi bạn kết nối với phiên bản lần đầu tiên, bạn sẽ thấy một cảnh báo bảo mật hỏi xem bạn có tin tưởng máy chủ mà bạn đang kết nối hay không, chọn chấp nhận và một thiết bị đầu cuối sẽ mở ra nhắc bạn nhập tên người dùng mà bạn có thể tìm thấy

Triển khai ứng dụng nodejs trên aws ec2

Khi nhập tên người dùng vào thiết bị đầu cuối, bạn sẽ được kết nối thành công với phiên bản AWS EC2 và sẽ thấy màn hình bên dưới

Triển khai ứng dụng nodejs trên aws ec2

Cài đặt NodeJS trên phiên bản AWS EC2

Bây giờ chúng ta đã kết nối với phiên bản EC2 của mình, điều đầu tiên chúng ta cần làm là chạy lệnh bên dưới như được đề xuất trong thiết bị đầu cuối để áp dụng tất cả các bản cập nhật

 sudo yum update

với cách này, bây giờ chúng ta nên chuyển sang người dùng root bằng lệnh bên dưới

sudo su

vì vậy bây giờ thiết bị đầu cuối của bạn sẽ trông như thế này

Triển khai ứng dụng nodejs trên aws ec2

Bây giờ, hãy kiểm tra xem phiên bản ec2 của bạn có chứa NodeJS không

Triển khai ứng dụng nodejs trên aws ec2

như bạn có thể thấy, khi chúng ta nhấn lệnh nút, chúng tôi gặp lỗi không tìm thấy lệnh, điều đó có nghĩa là nút không được cài đặt trên hệ thống. Để cài đặt nút, chúng ta cần cài đặt gói RPM của nó bằng lệnh bên dưới

curl -sL https://rpm.nodesource.com/setup_16.x | sudo -E bash -

Lệnh này sẽ cài đặt phiên bản nút 16 RPM hiện là phiên bản LTS trên EC2. Sau lệnh này, chúng ta sẽ sử dụng lệnh sau để cài đặt nút

sudo yum install -y nodejs

bây giờ sau khi thực hiện thành công các lệnh trên, chúng ta sẽ có thể sử dụng lệnh nút để kiểm tra phiên bản nút

Triển khai ứng dụng nodejs trên aws ec2

Như bạn có thể thấy, chúng ta đã cài đặt thành công NodeJS trên phiên bản EC2 của mình

Cài đặt MongoDB trên phiên bản AWS EC2

Bây giờ vì hầu hết các ứng dụng đều yêu cầu cơ sở dữ liệu, trong trường hợp của chúng tôi, nó sẽ là mongoDb. Bây giờ chúng ta cũng sẽ cài đặt nó trên phiên bản EC2 của mình. Lý tưởng nhất là chúng ta nên có một phiên bản riêng cho cơ sở dữ liệu, nhưng vì mục đích học tập, chúng tôi sẽ chỉ sử dụng phiên bản EC2 hiện tại của mình

Bây giờ để cài đặt mongo trên aws linux, hãy nhờ sự trợ giúp của tài liệu chính thức của họ

Như tài liệu gợi ý, chúng ta cần tạo một 'mongodb-org-6. 0. repo' trong đường dẫn '/etc/yum. repo. d/‘, chúng ta có thể sử dụng các lệnh dưới đây theo thứ tự để làm điều đó

Triển khai ứng dụng nodejs trên aws ec2

Ở đây bằng cách sử dụng ls, chúng ta có thể kiểm tra tất cả các tệp trong thư mục hiện tại. như bạn có thể thấy, chúng tôi đã tạo thành công tệp

Bây giờ như tài liệu gợi ý, chúng tôi sẽ sao chép nội dung sau vào tệp

[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc

để làm điều này, chúng tôi sẽ mở tệp bằng lệnh 'vi mongodb-org-6. 0. repo‘, và sao chép nội dung trên. Sau khi hoàn tất, nhấn phím Esc và viết 'wq. ' và nhấn enter

Bây giờ nếu chúng ta nhấn 'cat mongodb-org-6. 0. repo’, chúng ta sẽ có thể xem nội dung tệp

Triển khai ứng dụng nodejs trên aws ec2

Như bạn có thể thấy, chúng tôi đã sao chép thành công nội dung trong /etc/yum. repo. d/mongodb-org-6. 0. repo

Bây giờ chúng ta có thể sử dụng lệnh bên dưới để cài đặt phiên bản ổn định mới nhất của MongoDB

sudo yum install -y mongodb-org

Bây giờ chúng tôi đã cài đặt mongoDb, chúng tôi có thể khởi động nó bằng lệnh bên dưới

sudo service mongod start

Triển khai ứng dụng NodeJS trên AWS EC2 bằng GIT

Bây giờ chúng ta sẽ tiến hành triển khai ứng dụng của mình trên phiên bản EC2 bằng cách sử dụng git

Cài đặt Git trên AWS EC2

Điều đầu tiên chúng tôi cần ở đây là cài đặt git trên phiên bản EC2 của bạn. Chúng ta có thể sử dụng lệnh sau để làm điều đó

sudo yum install -y git

Sau này, chúng ta có thể kiểm tra xem git đã được cài đặt chưa bằng lệnh git

Triển khai ứng dụng nodejs trên aws ec2

Như đã thấy ở trên, git đã được cài đặt thành công trên phiên bản EC2 của chúng tôi

Nhân bản Kho lưu trữ Git trên AWS EC2

Bây giờ với sự trợ giúp của lệnh git bên dưới, chúng tôi sẽ sao chép kho lưu trữ Github của chúng tôi trong phiên bản EC2 của chúng tôi

git clone https://github.com/AzzanKhan/NodeJS-Authentication-using-Passport.git
Triển khai ứng dụng nodejs trên aws ec2

Khi hoàn tất việc sao chép git repo, chúng ta có thể thấy một thư mục có tên ‘NodeJS-Authentication-using-Passport’ chứa mã ứng dụng của chúng ta.

Thiết lập và chạy ứng dụng NodeJS trên AWS EC2

Bây giờ chúng ta phải cd vào thư mục dự án và điều đầu tiên chúng ta cần làm là cài đặt tất cả các phụ thuộc được liệt kê trong gói. json bằng lệnh bên dưới

npm install

Điều này hoàn thành thiết lập ứng dụng của chúng tôi và bây giờ chúng tôi có thể tiếp tục và chạy ứng dụng. Nhưng ứng dụng của chúng tôi đọc các biến môi trường nhất định được xác định trong. env, như cổng và bí mật phiên. Lý tưởng nhất là có một vài cách gốc AWS khác nhau mà chúng tôi có thể sử dụng để kéo các biến môi trường vào ứng dụng Node của bạn trên EC2 như AWS Secrets Manager, AWS System Manager Parameter Store nhưng hiện tại chúng tôi sẽ giữ mọi thứ đơn giản và chuyển các biến môi trường cùng với lệnh chạy

sudo su
0
Triển khai ứng dụng nodejs trên aws ec2

Như bạn thấy, ứng dụng của chúng tôi đang chạy thành công trên AWS EC2 localhost port 8080.

Cho phép truy cập công khai vào cổng AWS EC2

Bây giờ để mở ứng dụng này trong trình duyệt, chúng tôi cần có tất cả quyền truy cập vào cổng EC2 bằng cách thêm các quy tắc gửi đến trong nhóm bảo mật EC2. Đối với điều này, hãy mở bảng điều khiển AWS của bạn và điều hướng đến phiên bản EC2 của bạn -> Bảo mật -> Nhóm bảo mật và bạn sẽ thấy màn hình bên dưới nơi bạn sẽ phải thực hiện các thay đổi sau

Triển khai ứng dụng nodejs trên aws ec2

Ở đây trong cột thứ 2, chúng tôi đã thêm quy tắc loại TCP tùy chỉnh để cho phép truy cập công khai cổng 8080 nơi ứng dụng của chúng tôi đang chạy. Nếu bạn muốn cho phép nhiều cổng truy cập công khai, bạn cũng có thể chọn tùy chọn TCP ALL

Giờ đây, chúng ta có thể mở ứng dụng trên trình duyệt bằng cách điều hướng đến địa chỉ IPv4 công khai có cổng 8080 của phiên bản EC2, trong trường hợp của tôi là http. //3. 129. 44. 225. 8080/

Triển khai ứng dụng nodejs trên aws ec2

Như bạn có thể thấy bây giờ chúng ta có thể truy cập ứng dụng đang chạy trên phiên bản AWS EC2

Điều này hoàn thành việc triển khai thành công ứng dụng NodeJS và MongoDB của chúng tôi trên AWS EC2 bằng Git. Một điều cần lưu ý là, hướng dẫn này chỉ cung cấp kiến ​​thức cơ bản về cách chúng ta có thể triển khai một ứng dụng trên AWS EC2 để người khác truy cập và thử nghiệm. Các phương pháp được áp dụng trong bài viết này không phải là phương pháp hay nhất để triển khai ứng dụng sẵn sàng sản xuất trên EC2

Bạn cũng có thể xem bài viết này để tìm hiểu Sử dụng Docker để chứa ứng dụng NodeJS và MongoDB

Làm cách nào để cài đặt nodejs trên phiên bản EC2?

Quy trình .
Kết nối với phiên bản Linux của bạn với tư cách là người dùng ec2 bằng SSH
Kích hoạt nvm bằng cách gõ dòng sau vào dòng lệnh. . .
Sử dụng nvm để cài đặt phiên bản mới nhất của Node. js bằng cách gõ dòng sau vào dòng lệnh. .
Kiểm tra nút đó. js đã được cài đặt và chạy chính xác bằng cách gõ dòng sau vào dòng lệnh

Bạn có thể chạy nút js trên AWS không?

Khởi chạy một nút. môi trường ứng dụng web js sử dụng AWS Elastic Beanstalk và Amazon DynamoDB . Beanstalk đàn hồi cung cấp và quản lý cơ sở hạ tầng cơ bản (e. g. , các phiên bản Amazon EC2) và các thành phần ngăn xếp (e. g. , hệ điều hành, máy chủ web, ngôn ngữ/khuôn khổ) cho bạn. DynamoDB cung cấp cơ sở dữ liệu NoSQL.

Làm cách nào để triển khai nodejs và MongoDB trong AWS?

Sau đây là các bước sử dụng AWS EC2 để triển khai Nút của bạn. Ứng dụng JS MongoDB. .
Bước 1. Tạo phiên bản EC2 mới
Bước 2. Thiết lập kết nối SSH
Bước 3. Cài đặt nút JS
Bước 4. Cài đặt cơ sở dữ liệu MongoDB
Bước 5. Thiết lập ứng dụng
Bước 1. Thiết lập MongoDB
Bước 2. Cài đặt nút. gói JS

Làm cách nào để triển khai ứng dụng node js express?

Tóm tắt nhanh .
Tạo một thư mục mới và khởi tạo kho lưu trữ Git
Đăng nhập vào Heroku CLI và tạo một dự án mới
Khởi tạo một dự án npm mới và cài đặt Express. js
Chỉnh sửa nội dung của ứng dụng. .
Chỉnh sửa các tệp HTML, CSS và JavaScript tĩnh
Tạo một hồ sơ
Thêm và cam kết với Git, sau đó đẩy tới nhánh chính Heroku của bạn