Configuração: Windows 10 WSL
Comandos de trabalho para abrir um shell no NAS e, em seguida, conectar-se à instância do docker
ssh [email protected] -i ./qnap_001.pem
[~] # docker exec -it ubuntu /bin/bash
root@ubuntu:/#
Agora, gostaria de fazer o ssh e conectar-me à instância do docker, mas isso não funciona.
ssh [email protected] -i ./qnap_001.pem "docker exec -it ubuntu /bin/bash"
devoluções
sh: docker: command not found
Passei algumas horas lendo postagens, mas não consigo decifrá-lo. Quando resolvido, configurarei com uma tecla de atalho no ConEmu para abrir o shell na instância do docker
Você provavelmente precisará executar o ssh com
-t
para alocar um TTY para a sessão remota:Seu problema imediato é provavelmente que o diretório que contém o docker não está em seu PATH no sistema remoto, porque o que quer que adicione esse diretório ao seu PATH não foi executado.
Quando você executa invocar
ssh
e especifica um comando para executar no sistema remoto, o ssh não aloca um TTY para a sessão remota por padrão. O shell remoto pode se inicializar de maneira diferente porque não possui um TTY. Em particular, provavelmente não executou qualquer instrução que adicione o diretório docker ao seu PATH.A
-t
opção ssh direciona o ssh para alocar um TTY para a sessão. Isso deve resultar na inicialização de seu shell da mesma forma que faria para uma sessão interativa.