Nasıl saklamak için Node.js dağıtım ayarları/yapılandırma dosyaları?
Birkaç Düğüm uygulamalar üzerinde çalışıyorum, ve dağıtımı ile ilgili ayarları saklamak için iyi bir model arıyordum. Bu Django dünya (nereden geldim), ortak uygulama olur olmak zorunda a settings.py
dosyası içeren standart ayarlar (saat dilimi, vb), ve daha sonra bir local_settings.py
dağıtım için özel ayarlar yani. memcache yuva, e-posta yöneticileri için adres ne konuşmak, ne ve benzeri.
Düğüm için benzer desenleri arıyorum. Sadece bir yapılandırma dosyası olurdu, bu yüzden henüz sıkışmış olan her şey app.js
, ama bu benim için önemli bir yol var sunucuya özel yapılandırma dosyası olmayan kaynak kontrolü. Aynı uygulama iyi çılgınca farklı ayarlar ile farklı sunucular arasında dağıtılmış olabilir, ve birleştirme çakışmaları ve tüm bu ile uğraşmak zorunda benim eğlence anlayışım değil.
Yani bunun için/çerçeve aracı falan mı, yoksa herkes sadece birlikte bir şeyler hack mi kendileri?
CEVAP
Benim yapılandırma ve bir paket için bir config.js kullanıyorum.benim paketler için json.
Benim config.js gibi görünüyor
var config = {};
config.twitter = {};
config.redis = {};
config.web = {};
config.default_stuff = ['red','green','blue','apple','yellow','orange','politics'];
config.twitter.user_name = process.env.TWITTER_USER || 'username';
config.twitter.password= process.env.TWITTER_PASSWORD || 'password';
config.redis.uri = process.env.DUOSTACK_DB_REDIS;
config.redis.host = 'hostname';
config.redis.port = 6379;
config.web.port = process.env.WEB_PORT || 9980;
module.exports = config;
O zaman benim proje benim config gibi yük:
var config = require('./config');
ve sonra config eşyalarımı erişebilirsiniz.db_host, config.db_port vs. bana da kodlanmış parametreleri kullanın veya kaynak kontrol şifreleri saklamak istemiyorum ama parametreleri çevre değişkenleri depolanan sağlar Bu.
Ben de bir paket oluşturur.json ve Ekle bağımlılıkları bir bölüm
"dependencies": {
"cradle": "0.5.5",
"jade": "0.10.4",
"redis": "0.5.11",
"socket.io": "0.6.16",
"twitter-node": "0.0.2",
"express": "2.2.0"
}
paketleri yüklemek için çalıştırın
npm install
benim yerel makine için projemi clone. Burada bilgi http://nodetuts.com/tutorials/22-freezing-and-bundling-your-dependencies-with-node-04.html#video burada: http://howtonode.org/introduction-to-npm
Bu projede uzaktan kumanda üretim sunucum için eklenmiş github saklanır.
C#, MongoDB GridFs ile nasıl fotoğraf ...
Bash ile şablonları yapılandırma dosya...
Nasıl JSP dosyaları Java kod önlemek i...
Nasıl C kaynak dosyaları arasında pay ...
Çözmek için nasıl "Eklenti yürütm...