Sản xuất tệp env Nodejs
Có nhiều giá trị không đổi cần được lưu trữ trong các ứng dụng và được truy xuất để sử dụng sau này, chẳng hạn như tên người dùng DB, mật khẩu DB, mật khẩu email và Khóa API. Các giá trị này có thể thay đổi trong các trường hợp khác nhau. Khi nhà phát triển viết một đoạn mã, mã đó cần được kiểm tra. Các thử nghiệm phải chống lại môi trường phát triển. Nhà phát triển không nên kết nối với máy chủ DB sản xuất Show Nhà phát triển thường sử dụng cơ sở dữ liệu cục bộ để phát triển và thử nghiệm, tài khoản email cá nhân để gửi email kiểm tra. Đôi khi, trước khi triển khai sản xuất, ứng dụng sẽ chuyển sang môi trường chạy thử và được nhóm Đảm bảo chất lượng (QA) kiểm tra dựa trên môi trường chạy thử. Cuối cùng, trong môi trường sản xuất, tất cả các dịch vụ phải sẵn sàng để sản xuất. Vì lý do đó, chúng tôi cần duy trì hai hoặc nhiều môi trường trong khi tạo ứng dụng Thật thuận tiện và thông thường để lưu trữ một số giá trị không đổi khác nhau trong quá trình thay đổi môi trường. Ứng dụng có thể được cấu hình để truy xuất các giá trị này dựa trên môi trường mà ứng dụng đang chạy trên đó Biến môi trườngCác biến môi trường có thể được tạo ở cấp ứng dụng hoặc hệ thống Cấp độ khác nhauCác hệ điều hành như Windows và Linux quản lý các biến môi trường của riêng chúng. Nút. ứng dụng js có thể đọc các giá trị này từ hệ thống lưu trữ Nhưng đợi đã. Điều gì sẽ xảy ra nếu nhà phát triển muốn đọc các giá trị này được lưu trữ cục bộ trong một tệp (ví dụ: tệp cấu hình)? . các ứng dụng js cũng có thể quản lý các biến môi trường của riêng chúng được lưu trữ trong một tệp (được gọi là tệp cấu hình trong hầu hết các ngôn ngữ lập trình khác). Nút. js không thể tự duy trì các biến môi trường cục bộ. Nó phải sử dụng một gói có tên là npm i -S dotenv 1dotenv đọc từ. envGói npm i -S dotenv 1 có thể được cài đặt bằng lệnh NPM và nó đọc từ tệp có tên npm i -S dotenv 3Thiết lập một ứng dụngĐể hiểu toàn bộ khái niệm, chúng ta sẽ tạo một Nút. js chạy trên nhiều môi trường để chứng minh việc sử dụng gói nút npm i -S dotenv 1 để duy trì các biến cục bộ và cũng thử triển khai trên máy chủ để đọc các biến hệ thống trong khi chạy trên máy chủCác bước thiết lập ứng dụng
npm init -y
npm i -S dotenv
require("dotenv").config();
const DB_HOST = process.env.DB_HOST;
Ứng dụng dưới đây đọc các giá trị từ npm i -S dotenv 3 và trả lại cho người dùngnút hoàn chỉnh. máy chủ jsTriển khai trên Heroku Chúng tôi sẽ triển khai ứng dụng trên Heroku và giải thích cách đọc các giá trị này từ các biến hệ thống Có nhiều cách để triển khai ứng dụng trên Heroku. Chúng tôi sẽ sử dụng phương pháp GitHub Yêu cầu
Các bước triển khai
Tên của kho lưu trữ nên được điền trong trường hợp của chúng tôi, đó là env_demo. Nếu dự án là riêng tư, bạn cần chọn tùy chọn Riêng tư github — kho lưu trữ mới2. Chúng ta cần thực hiện một số thay đổi trong gói. json
Ngoài ra, chúng ta cần chỉ định cổng để chạy ứng dụng trong chỉ mục. js như bên dưới. Điều này được yêu cầu bởi Heroku. Bạn không nên chỉ định cổng http 3. Thêm một tệp có tên. gitignore, trong thư mục gốc của dự án. Chúng tôi có thể chỉ định các tệp không được tải lên máy chủ GitHub. Trong ví dụ của chúng tôi, chúng tôi không muốn thêm. env, vì nó chứa các chi tiết cá nhân của tôi và thư mục node_modules vì nó không được khuyến nghị, Heroku tạo node_modules và tìm nạp các gói npm cần thiết 4. Trong thư mục dự án trên máy của bạn, hãy viết các lệnh bên dưới npm i -S dotenv 05. Truy cập Heroku và tạo một tài khoản 6. Tạo một ứng dụng mới heroku — tạo ứng dụng mới7. Chọn Kết nối với Github từ tab triển khai heroku — kết nối với github8. Tìm kho lưu trữ và chọn Kết nối, sau đó nhấp vào Triển khai nhánh. Sau khi triển khai xong, bấm vào nút Xem để xem ứng dụng trên trình duyệt heroku — kết nốiheroku — triển khai nhánhBây giờ, ứng dụng sẽ mở và hiển thị một đối tượng JSON trống. Tại sao? nút - đọc các biến envĐịnh cấu hình biến
Điều rất quan trọng trong phát triển ứng dụng là tách nhiều biến môi trường. Dễ dàng duy trì nhiều biến môi trường trong một Nút. js với việc sử dụng gói npm npm i -S dotenv 1. Nó đọc từ một tệp có tên là npm i -S dotenv 3. Trong khi một. tệp env không tồn tại, hãy xử lý. env cố đọc từ các biến môi trường máy
bạn có nên sử dụng. env trong sản xuất?Sử dụng các biến môi trường là một phương pháp hơi phổ biến trong quá trình Phát triển nhưng thực tế không phải là một phương pháp lành mạnh để sử dụng với Sản xuất . Mặc dù có một số lý do giải thích cho điều này, nhưng một trong những lý do chính là việc sử dụng biến môi trường có thể gây ra sự tồn tại không mong muốn của các giá trị biến.
Làm cách nào để tạo tệp env trong nodejs?Bạn có thể tạo một. env trong thư mục gốc của ứng dụng chứa các cặp khóa/giá trị xác định các biến môi trường bắt buộc của dự án . Thư viện dotenv đọc cái này. env và nối nó vào quá trình.
Làm cách nào để sử dụng env trong nodejs?Cách sử dụng biến môi trường tùy chỉnh trong Nút . Tạo ra một. tập tin env. . Cài đặt thư viện dotenv. npm cài đặt dotenv Yêu cầu dotenv càng sớm càng tốt (e. g. trong ứng dụng. . Bất cứ nơi nào bạn cần sử dụng các biến môi trường (e. g. trong GitLab, trong Jenkins, trong Heroku,…) bạn cần thêm các biến môi trường của mình Tôi có thể có nhiều. tập tin env?Một giải pháp là có nhiều. các tệp env, mỗi tệp đại diện cho các môi trường khác nhau . Trong thực tế, điều này có nghĩa là bạn tạo một tệp cho từng môi trường của mình. . |