Como posso me conectar à sessão remota e obter a saída do servidor no meu local

0

Portanto, eu tenho um servidor remoto na nuvem executando o meu aplicativo, quando eu preciso testar / mergulhar teste eu corro ./gradlew- no meu local. que executa um script > conectar-se a vm - meu aplicativo > e iniciar o teste na minha vm. Eu posso ver a saída ./gradle no meu terminal local, então quando o teste termina, o servidor devolve os resultados para o meu local através da sessão Gradle. Mas se eu perdi a conexão com o meu vm durante o teste longo ou perdeu a internet por algum motivo, a sessão gradle fica desconectada e sai, Isso não me dá o resultado automaticamente no meu local. Existe uma maneira de recuperar essa sessão se eu me conectar à internet novamente?

    
por punkb 27.09.2017 / 18:33

1 resposta

0

Não sabe os detalhes específicos do Gradle, mas o seguinte é uma abordagem genérica que pode ser usada para executar um processo remoto, independentemente de uma conexão perdida:

  • ssh na máquina remota
  • (tmux / screen) e / ou nohup um processo
  • (desanexe da sessão ssh)
  • scp / rsync os resultados do servidor remoto para sua máquina local

Abaixo está um exemplo genérico do que é descrito acima:

local> $ ssh user@remoteHostName
remote> $ nohup ./command &
...closed session...
local> $ scp user@remoteHostName:/results/directory/result.txt .

Embora isso não seja exatamente o que você está fazendo, parece que o seu comando está fazendo. E esse conhecimento ajudará você a depurar quaisquer problemas e até mesmo a evitar a execução das tarefas novamente (como se sua conexão caísse enquanto você baixava os resultados).

Você pode consultar a Wikipédia / google para obter mais informações sobre todas essas ferramentas. Infelizmente como tenho baixa reputação não posso colocar mais de 2 links: (

    
por 27.09.2017 / 19:14