Execute o Shell Script dentro do tmux

Execute o Shell Script dentro do tmux

Por que depois de executar o tmux em um servidor remoto via ssh, o programa funciona; mas após desanexar sessões, ele retorna 404?

Este é um programa Go(golang), um servidor http escutando em uma porta, atrás de um proxy reverso nginx.

Primeiros dados: tudo funciona bem assim:

1 - Eu me conecto ao servidor usando ssh user@server-ip,

2 - correr tmux,

3 - execute este script dentro da tmuxsessão, por . my-script.sh:

#!/bin/sh

go build -v

exec 3>&1 4>&2
trap 'exec 2>&4 1>&3' 0 1 2 3
exec 1>/tmp/myapi.log 2>&1

export API_COUCHDB_ADMIN='admin'
export API_COUCHDB_PASSWORD='************'
export API_COUCHDB_URL='http://172.17.0.2:5984/'
# [some other env variables ...]
./myapi

4 - desanexe a sessão tmux porCtrl-be entãod.

Até agora tudo bem! Tudo funciona bem dentro de um navegador no endereço http://www.myapi-consumer.come o terminal ssh ainda está aberto; mas

5 - quando eu desanexo a sessão ssh (porCtrl+a e d), o programa não funciona mais corretamente e retorna 404 (é quem está enviando 404).

6 - Agora quando me reconecto ao servidor remoto usando ssh user@server-ipentão novamente ele funciona como esperado e estou testando a parte "funcionando" em outra conexão - no meu celular com outra conexão de internet.

O que está acontecendo?

Responder1

O problema é que o aplicativo está servindo arquivos que residem no diretório inicial, que são desmontados ao serem desconectados.

Eu recebi a resposta do grupo golang-nutsaqui.

Responder2

É assim que estou entendendo.

Você está dizendo que está saindo da sessão ou fechando a sessão atual do terminal. Um programa em execução e você acabou de fechar o terminal, ele não será mais executado.

Mas você está usando tmuxe pronto tmux, para executar os programas em segundo plano.

Tente executar o programa colocando-o em segundo plano. Quero dizer

nohup myscript.sh &

nohuppara executar seu script mesmo que você assine, &[and]para colocar seu script em segundo plano.

Espero que isso ajude você.

informação relacionada