2014-05-13 17 views
5

Bir Vagrant kutusunda barındırılan bir NodeJS projesine bağlanmak için WebStorm NodeJS hata ayıklayıcısını kurmaya çalışıyorum. Bazı zorluklarla geliyorum.NodeJS hata ayıklayıcısını bir Vagrant kutusuna nasıl tünelleyebilirim?

sunucusuna ben tüneli (Terminal üzerinden yani) geleneksel şekilde, tüm iyi çalışır ve ben vb WebStorm aracılığıyla, kendisine bunu hata ayıklama cURL mümkün isem

ssh -L 5858:127.0.0.1:5858 -N [email protected] 

Ben bir kez daha öncekilerden farklı

config.vm.network :forwarded_port, guest: 5858, host: 5858 

, bu yine Serseri kutuyu ama benim yerel makinede çalışır: o çalışma almıştım, benim Vagrantfile aşağıdaki koydu. Ben buna cURL zaman aşağıdaki hatayı alıyorum:

curl: (56) Recv failure: Connection reset by peer 

kimse yanlış yapıyorum için herhangi bir fikirleri var mı? Bu Vagrantfile üzerinden yapılandırmak mümkün mü?

Bunu yapmak istiyorum, böylece ekibim hata ayıklayıcılarını sıfır yapılandırmasıyla bağlayabilir.

Teşekkür

+0

Aynı sorunu yaşıyorum, çözdünüz mü? –

+0

Hayır. Şu andaki Vagrant ayarı ile imkansız olduğunu düşünüyorum. Port yönlendirme yapar, ancak tünel açma, çalışma şeklinin dışında görünen bir SSH eylemidir. Bir ödül almaya başlamak ve birisinin yanlış olduğunu kanıtlayabilmem için – RiggerTheGeek

+0

bu benim için çalışır: http://neilk.net/blog/2013/08/21/how-to-debug-node-dot-js-from -within-vagrant/ –

cevap

3

Yapabilirsin makinenize uzak port yönlendirme yaratacak bir hüküm shell script (tunnel.sh) kullanmayı deneyin:

#!/bin/bash 

# executed from 'vagrant' 
ssh -R 5858:127.0.0.1:5858 [email protected] 

Aslında aynı klasöre bu senaryoyu koymalıyız

Vagrant.configure("2") do |config| 
    config.vm.provision "shell", path: "tunnel.sh" 
end 

Bu Serseri sen virgül yürütmek Bu komut dosyası her zaman çalıştırmak yapacaktır: En Vagrantfile daha ve bu satırları eklemek için Vagrantfile düzenlemek nd:

vagrant up 

Veya:

vagrant provision 

bu çalışıyor, size Vagrantfile içinde port yönlendirme hattını silmelisiniz.

Tüneli denemedim, ancak aslında, public anahtarlarını authorized_keys ve benzeri görevlerde kopyalamak gibi başladığında vm'yi yapılandırmak için hazırlama komut dosyaları kullanıyorum.

+0

Bu nereye koyulur? Ve gerçekten denedin mi? – RiggerTheGeek

+0

Yanıtta bir provizyon komut dosyasının nasıl kullanılacağı hakkında daha fazla ayrıntı ekledim. –