Crontab + Forever + node.js + NPM

Crontab + Forever + node.js + NPM

Não consigo colocar meu crontab para funcionar. Estou no Ubuntu 14.04x64

Então, foi isso que eu fiz:

.root
.pw
.sudo apt-get update
.sudo apt-get install nodejs
.sudo apt-get install npm
.curl https://raw.githubusercontent.com/creationix/nvm/v0.11.1/install.sh | bash

[Eu recarrego o Putty]

.nvm install 0.12
.npm install steam

[Agora vou para o filezilla, carrego o arquivo.js no diretório raiz]

.nvm use 0.12
.node file.js

[Ele executa o arquivo.js com sucesso, eu recarrego o Putty]

.nvm use 0.12
.npm install forever -g
.forever start file.js

[Ele executará o arquivo.js infinitamente]

Agora quero reiniciar para executar esses comandos. O problema é que "forever start" não será executado se eu não executar o "nvm use 0.12" em primeiro lugar.

Então:

.crontab -e

nano

.*/5 * * * * nvm use 0.12 && forever restart file.js

ctrl + x salvo

Resultado: ele não reinicia.

O que estou fazendo de errado? Obrigado!

Responder1

Encontrei a solução sozinho.

0 * * * * root/.nvm/v0.12.4/bin/node /usr/local/bin/forever restart file.js

Obrigado de qualquer maneira! :)

Responder2

Para começar, é provável que seu cron não tenha um ambiente padrão e, portanto, você precise especificar caminhos completos para comandos e arquivos.

Como diz o @MiPnamic, é melhor agrupar sua inicialização em um arquivo shell e executá-lo. Isso também torna mais fácil o ajuste caso seja necessário - por exemplo, se você quiser mudar do Nó 0,12 para 0,10 ou qualquer outra coisa.

Além disso, você também pode definir a versão padrão no NVM fazendo:

nvm alias default v0.12

informação relacionada