Galera, passei algumas horas para converter toda a aula para minha maquina rodando Windows 10. Caso você tenha o mesmo problema de está utilizando a maquina Windows 10 com Docker Desktop, segue uma dica para você fazer o deploy. Primeiro de tudo galera precisamos instalar o OpenSSH no Windows e existe duas forma de fazer isso, pela linha de comando ou através do painel de controle. Para detalhes como instalar segue o link https://docs.microsoft.com/pt-br/windows-server/administration/openssh/openssh_install_firstuse?tabs=gui
O próximo passo seria habilitar a visualização dos arquivos ocultos
Após isso, ao acessar o diretório raiz do windows, por exemplo c:\ você verá o diretório ProgramData, dentro de deste diretório tem o diretório ssh, caso seu usuário seja administrador você precisará criar um aquivo chamado administrators_authorized_keys, caso contrário basta criar o arquivo authorized_keys, esse arquivos segue o mesmo padrão do que foi passado na aula, ou seja, você vai copiar a key publica que você criou na image linux do gitlab-runner. Após a criação do arquivo garanta que ele tenha a permissão correta, para isso execute o comando abaixo. Este comando estara copiando a permissão que existe no arquivo ssh_host_dsa_key para o arquivo administrators_authorized_keys. Basicamente ele está dando controle total para o usuario System e para o usuário Administradores
get-acl c:\ProgramData\ssh\ssh_host_dsa_key | set-acl c:\ProgramData\ssh\administrators_authorized_keys
O próximo passo é alterar o arquivo c:\ProgramData\ssh\sshd_config e garantir que as seguintes linhas estejam descomentadas
Com essas alterações provavelmente já deve funcionar a parte do ssh e scp. Eu tive um outro problema que foi referente ao nome do meu usuário, que contem um espaço em branco, com isso tanto o comando scp, quando o comando ssh precisam de uma pequena alteração. Para o comando ssh é mais simples, basta adicionar uma \ antes do espaço. Exemplo:
ssh username\ com\ espaco@192.168.x.x
Já para o comando scp funcionar corretamente você precisa criar o seguinte arquivo ~/.ssh\config dentro da maquina linux e adicionar o seguinte conteúdo
Host <ip da maquina windows>
User "username com espaco"
Após preparar todo ambiente é hora de alterar o comando dentro do arquivo gitlab-ci.yaml. Basicamente nós trocamos os ;** por **&
Espero ter ajudado.