У меня есть Баш файл, строить драгоценные файлы и запустить мою программу:перл: команда не найдена
cd /src/stackify-api
rm *.gem
gem build stackify.gemspec
gem install stackify-0.1.0.gem
cd /src/stackify-classificator
rm *.gem
gem build stackify-classificator.gemspec
gem install stackify-classificator-0.1.1.gem
cd /src/bin
ruby console-task.rb
я использую его в контейнер Докер. Он отлично работает, если я запустить контейнер в интерактивном режиме и запустить этот Баш-файл вручную:
~ » docker run -it -v /mnt/lacie/online/btsync/development:/src stack_rvm /bin/bash
[email protected]:/# /src/build.sh
...
Successfully built RubyGem
Name: stackify
Version: 0.1.0
File: stackify-0.1.0.gem
Но когда я пытаюсь запустить этот сценарий в докер, как это я получаю сообщение об ошибке:
~ » docker run -it -v /mnt/lacie/online/btsync/development:/src stack_rvm /bin/bash /src/build.sh
/src/build.sh: line 5: gem: command not found
Почему и как я могу это исправить?
потому что '-l' делает bash оболочкой входа, которая установит вашу переменную среды' PATH'. См. Https://www.gnu.org/software/bash/manual/bash.html#Invoking-Bash – Thomasleveil