Wiem o skrypcie obsługi administracyjnej, ale jest to inny skrypt, o który pytam. Chcę, aby skrypt był uruchamiany po każdym restarcie gościa.Vagrant wykona skrypt lub polecenie po każdym ponownym uruchomieniu gościa (vagrant up)
Używam zaprawy do skorup.
config.vm.provision :shell, path: "vagrant/bootstrap.sh"
Nie mogę umieścić moich poleceń w tym skrypcie, który chcę uruchomić po każdym ponownym uruchomieniu.
Zasadniczo chcę, aby jedna z moich aplikacji została uruchomiona, gdy użytkownik wykona vagrant up
.
Mój gość Ubuntu 1404 sprawdzony i jedno rozwiązanie znalazłem na temat opierając się na mój gość -
sudo crontab -e
#add the following line
@reboot sh /path/to/my_script_on_guest.sh
mogę spróbować zrobić to w moim skrypcie rezerw, ale sudo crontab -e
prosi redaktora i mam w rodzaju interaktywnego dodawania linii. Ponieważ plik crontab nie jest ustalone, że nie wiem, czy to jest wykonalne jeden liner edycje plików jak
echo '@reboot sh /path/to/my_script_on_guest.sh' >> crontab_file
Jestem zgadywania, że musi to być gościem OS specyficzna sprawa.
Czy można to osiągnąć za pomocą Vagrant?
EDYCJA: poprawiona z modułu udostępniania ssh do obiektu powłoki powłoki.
Dzięki. Ale mam inne kroki inicjowania w moim bootstrap.sh, które nie są idempotentne. Czy jest jakikolwiek inny hak w cyklu życia? –
tak jasne, więc podziel swój skrypt i spraw, aby rzeczy były niezauważalne w innym skrypcie i nie uruchamiaj się zawsze - skrypty są uruchamiane w kolejności –
Właśnie próbowałem tego i to działa :) dziękuję. –