2012-06-25 32 views
20

Làm cách nào để sử dụng MongoDB (chạy trực tiếp) để phát triển một ứng dụng sao băng khác? Tôi đã thử sửa đổi (.meteor/server/server.js) và chỉ định MONGO_URL không có kết quả trước khi chạy meteor.Meteor custom mongodb trong quá trình phát triển

Điều này là không sử dụng MongoDB đi kèm, nó phải là một tệp riêng biệt/tùy chỉnh (về cơ bản là một thể hiện sao băng khác).

Điều này có thể được thực hiện với deploy method nhưng điều gì về bình thường meteor run trong quá trình phát triển?

UPDATE: này không làm việc tuy nhiên việc thực hiện phía khách hàng có vẻ hơi glitchy

+0

Tôi có cùng một câu hỏi, nhưng không thể tìm thấy câu trả lời đây. Trên thực tế tôi không tìm thấy thư mục ./meteor/server, nhưng server.js trong ./meteor/local/build/server/ sẽ luôn được xây dựng lại khi bạn khởi động lại máy chủ meteor. –

Trả lời

25

Như đã đề cập trong Unofficial Meteor FAQ, bạn có thể gọi Meteor với MONGO_URL set biến môi trường để thể hiện mong muốn:

MONGO_URL=mongodb://localhost:27017 meteor 

Nếu MongoDB của bạn xử lý nhiều cơ sở dữ liệu, bạn có thể chỉ định loại nào để sử dụng bằng cách gắn nó vào URL:

MONGO_URL=mongodb://localhost:27017/mydb meteor 

Bạn thậm chí có thể ngăn chặn Meteor bắt đầu một cá thể Mongo cục bộ trong quá trình phát triển bằng cách chạy:

MONGO_URL=none meteor 
+2

Có cách nào để lưu trữ biến ở đâu đó trong dự án không? Luôn gõ 'MONGO_URL = ...' để sao lưu sao băng có vẻ ngu ngốc. Sẽ tốt hơn nếu nó có thể được chọn bằng cách nào đó trong khi chỉ sử dụng 'meteor run'. (Tôi biết, các vấn đề thế giới đầu tiên ..) – frhd

+2

@archiehicox Không cần. Chỉ cần đặt env-variable đó vào tệp '~/.profile' của bạn để nhân rộng, hoặc bên trong'/etc/environment' để truyền bá toàn hệ thống. –

+2

@Shehi Đó là một cách hay. Bạn nói đúng, nó không phải là dự án cụ thể. – frhd

10

Tôi thấy rằng bạn không nên quên chỉ định cơ sở dữ liệu để kết nối. Trong trường hợp của tôi, tôi muốn có một cá thể Meteor thứ hai để kết nối với máy chủ MongoDB phát triển từ một cá thể đầu tiên.

Meteor sử dụng cổng HTTP 2 cho một sự phát triển MongoDB, và cơ sở dữ liệu 'sao băng', vì vậy cách chính xác để bắt đầu máy chủ thứ hai là:

MONGO_URL=mongodb://localhost:3002/meteor meteor --port=3800 
+2

Nó thực sự là cổng HTTP +1 (ít nhất là bây giờ). Bạn có thể xác minh điều này bằng cách thực hiện một cuộc gọi 'meteor mongo' để kết nối với cơ sở dữ liệu mặc định. Vì vậy, cơ sở dữ liệu mặc định 'mongodb: // localhost: 3001/meteor' – evolross

Các vấn đề liên quan