Cài đặt biến môi trường .env cho node app & digital ocean
-
Chào mọi người,
Mình đang tìm hiểu về biến môi trường để setup cho app viết bằng MERN Stack, đã deploy lên Digital Ocean ( server Ubuntu 18.04 ). Hiện tại mình có vài thắc mắc sau đây, mong mọi người nếu được hỗ trợ giúp mình:
-
Mình có tìm hiểu thì dùng package dotenv, tạo ra 1 file .env và khai báo tất cả những thông tin mật trong đó, sau đó mình sẽ check ở môi trường nào thì dùng URL của môi trường đó ( như hình ), nhưng vấn đề là làm sao để nó hiểu được khi nào thì ở development và khi nào thì ở production ? Mình setup trong nodejs hay setup trên Digital Ocean và setup như thế nào ?
-
View mình viết bằng Reactjs, gọi API từ nodejs. Vậy mình sẽ setup trong React như thế nào để khi ở development thì nó sẽ hiểu API sẽ có dạng locahost:... và khi ở production thì nó sẽ thay bằng domain. Ý mình là viết sao cho nó tự động, chứ nếu làm kiểu như này thì hơi nông dân quá: ( const apiURL = process.env.DB_LOCALHOST || process.env.domain_URL , khi lên production thì vào xóa thằng Localhost đi, kiểu vậy :))) ).
Mình cảm ơn rất nhiều.
-
-
Thì trong file .env cho thêm dòng code STAGE vào là đươc:
STAGE=development
-
@Trường-Sa rồi khi deloy thì phải vào file đó đổi STAGE = production à bạn, có cách nào hay hơn không nhỉ ? Để nó tự hiểu được ấy.