Systemd no Ubuntu 16.04 não dá esse erro de interface

1

Agora estou tentando implantar meu aplicativo Phoenix (Elixir) no Ubuntu 16.04. Para persistência, estou usando este arquivo (app.service) em / lib / systemd / system.

[Unit]
Description=Runner for My Phoenix App

[Service]
WorkingDirectory=/app
Environment=MIX_ENV=prod PORT=4000
ExecStart=/app/bin/app start
ExecStop=/app/bin/app stop
User=mohideen
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Meu nome de usuário é mohideen e a conta tem direitos de sudo. Quando tento usar o comando sudo systemctl start app.service , o comando falha com o seguinte erro:

Failed to start app.service: Unknown unit: app.service
See system logs and 'systemctl status app.service' for details.

Quando digito sudo systemctl status app.service , recebo esta mensagem:

Failed to get properties: No such interface ''

O aplicativo funciona bem quando eu inicio manualmente. Por que estou recebendo esse erro? Como posso garantir que meu aplicativo seja reiniciado ao reinicializar e travar?

    
por Mohideen Imran Khan 17.03.2017 / 14:50

1 resposta

2

Houve duas razões para o meu problema.

Primeiramente, minha localização do arquivo .service estava errada. Deve ser /etc e não /lib .

Em segundo lugar, upstart foi instalado anteriormente por mim. Isso evita que .service arquivos sejam executados (não sei por quê). Depois que eu desinstalei o upstart e reinstalei o systemd , o problema foi resolvido!

    
por Mohideen Imran Khan 19.03.2017 / 03:18