Узел устанавливается во время подготовки к бродяге, но исчезает при подключении к ssh

Я действительно устал от этого, и я не знаю, что не так. Я использую Vagrant 1.7.2, Ubuntu 13.04, Virtual Box 4.3 12 r93733

Мой хост-компьютер - Windows 8.1

Вот мой скрипт начальной загрузки узла, найденный на моем bootstrap.sh

echo "--- Installing Node.js ---"
curl https://raw.githubusercontent.com/creationix/nvm/v0.16.1/install.sh | bash
source ~/.nvm/nvm.sh
nvm install 0.12
nvm use 0.12
sudo cp ~/.nvm/versions/nodejs/v0.12/bin/node /bin/node

echo "--- Install node app dependencies --"
cd /var/www/html/node
npm install express
npm install youtube-audio-stream

Во время подготовки я мог видеть, что узел установлен правильно. Я мог видеть Now using node v0.12 . Я также мог видеть, что установка npm прошла успешно.

Однако, когда я подключаюсь с помощью vagrant ssh . Я получаю сообщение Команда 'nvm' не найдена. Кроме того, узел программы можно найти в следующих пакетах: . Я также проверил каталог ~/.nvm/, он не существует.

Становится еще страннее. Поэтому, пока я на ssh, я снова запускаю скрипт. Тогда nvm теперь правильно установлен, и я могу использовать node.


person bman    schedule 23.02.2015    source источник
comment
Это может быть проблема с разрешениями для вашего пользователя SSH.   -  person Chris    schedule 24.02.2015
comment
Если это так, то почему каталог nvm исчез? И когда я пытаюсь выполнить тот же скрипт по ssh, он все еще работает?   -  person bman    schedule 24.02.2015
comment
Возможно, потому что пользователь SSH не имеет доступа к каталогу nvm, созданному другим пользователем.   -  person Chris    schedule 24.02.2015
comment
Мне интересно, ты понял это?   -  person Perspective    schedule 18.05.2015


Ответы (1)


Это то, что я придумал

echo "--- Installing Node.js ---"
git clone https://github.com/creationix/nvm.git /home/vagrant/.nvm && cd /home/vagrant/.nvm && git checkout `git describe --abbrev=0 --tags`
source /home/vagrant/.nvm/nvm.sh
nvm install 0.12
nvm use 0.12
n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr/local
person bman    schedule 21.05.2015