2017-12-22 133 views
6

Başlığı olarak, NODE_ENV kurulumuna rağmen docker ruby ​​2.3.5 (ubuntu) ortamını kullanıyorum = geliştirme, process.env.NODE_ENV değerini kestirmeye çalıştığımda hala görmediğim herhangi bir yeri bulamadığım üretimi görüyorum. Sadece docker ortamında olur, ama MacOS'umda değil, nedenini tam olarak bilmiyor musunuz?Herhangi bir nedenden ötürü webpacker rayları her zaman "webpack-dev-server" kullanmasına rağmen NODE_ENV'nin üretim olduğunu düşünüyorum ve geliştirme için NODE_ENV'yi ayarlayın

Güncelleme: İşte Dockerfile ve referans için liman işçisi-compose.yml geçerli: https://gist.github.com/goodwill/b4e677ccf8fe0079183adeec35218812

Güncelleme:

04:08:37 webpacker.1 | /app/config/webpack/development.js:20 
04:08:37 webpacker.1 |  https: settings.dev_server.https, 
04:08:37 webpacker.1 |        ^
04:08:37 webpacker.1 | 
04:08:37 webpacker.1 | TypeError: Cannot read property 'https' of undefined 
04:08:37 webpacker.1 |  at Object.<anonymous> (/app/config/webpack/development.js:20:31) 
04:08:37 webpacker.1 |  at Module._compile (module.js:570:32) 
04:08:37 webpacker.1 |  at Object.Module._extensions..js (module.js:579:10) 
04:08:37 webpacker.1 |  at Module.load (module.js:487:32) 
04:08:37 webpacker.1 |  at tryModuleLoad (module.js:446:12) 
04:08:37 webpacker.1 |  at Function.Module._load (module.js:438:3) 
04:08:37 webpacker.1 |  at Module.require (module.js:497:17) 
04:08:37 webpacker.1 |  at require (internal/module.js:20:19) 
04:08:37 webpacker.1 |  at requireConfig (/app/node_modules/webpack/bin/convert-argv.js:97:18) 
04:08:37 webpacker.1 |  at /app/node_modules/webpack/bin/convert-argv.js:104:17 
+2

musunuz? –

+0

Lütfen bunu nasıl ayarlayacağınızla ilgili daha ayrıntılı bilgi verebilir misiniz? Bunu yeniden üretmek için sağlayabileceğiniz bir docker görüntüsü veya herhangi bir "gist" var mı? – fagiani

+0

Docker dosyasını buraya bakın: https://gist.github.com/goodwill/b4e677ccf8fe0079183adeec35218812 –

cevap

3

Docker: Bu benim WebPacker-dev-sunucu çalıştırırken ile bitirmek hatadır Kapsayıcılar, yerel ortamınızdan ortam değişkenlerini toplamaz.

Docker dosyalarınızın içindeki çevresel değişkeni ayarlayın. Örneğin: Alternatif

ENV NODE_ENV=development 

, komut satırından bu çevresel değişken kabı çalıştırabilirsiniz: Eğer düzgün docker içindeki NODE_ENV ayarı emin

$ docker run -e NODE_ENV=devlopment mycontainer 
+0

içinde ayarlandığını unutmayın Evet, bu zaten bu şekilde yapıldı, ancak yine de 'konsolu kullanmaya çalıştığımda .log (process.env.NODE_ENV) '' üretimi' gösterir. Düğüm paketinin önüne "bin/webpacker-dev-server" inin yüklenmesi (exec newenv, * cmdline ", satır 41, hala" geliştirme ". Projeyi çalıştırdığımda garip kısım sadece konteyner içinde gerçekleşiyor. yerel olarak böyle sorunu yok. çok aşırı bir tedbir olarak –

+0

, senin config sabit olarak bu değişkeni ayarlamayı deneyin/application.rb –

+0

Ben, sorunu ben adım ayıklama adım yaptım çünkü alışkanlık Justin- yardımcı eminim raylar kodu içinde gerçekleşmedi, bunun yerine bir şey sadece düğüm kısmı çağrıldığında, süper garip olduğunda gerçekleşir.Çok berbat olan kısım da benim de benim üzerimde gerçekleşmez: \ –

İlgili konular