O port-forward serve para abrir um tunel entre sua maquina local e o servidor dentro do container.
Tip: Ele serve para qualquer container, não somente banco de dados.
Quando voce já possui um serviço local (em sua máquina) na porta padrão (por exemplo Postgres na porta 5432 ou MySQL na porta 3306) é comum iniciar o port-forward em uma porta alternativa:
$ oc port-forward postgresql-1-mdb9l 5433
I0907 18:59:11.222147 8640 portforward.go:213] Forwarding from 127.0.0.1:5433 -> 5433
I0907 18:59:11.224804 8640 portforward.go:213] Forwarding from [::1]:5433 -> 5433
Ao fazer a conexão localmente via tunel (127.0.0.1:5433) ocorrerá o erro de conexão recusada abaixo:
I0907 19:00:02.135380 8640 portforward.go:247] Handling connection for 5433
E0907 19:00:02.368644 8640 portforward.go:318] an error occurred forwarding 5433 -> 5433: error forwarding port 5433 to pod postgresql-1-mdb9l_postares-multi, uid : exit status 1: 2016/09/07 22:00:02 socat[32506] E connect(3, AF=2 127.0.0.1:5433, 16): Connection refused
Isto acontece pois o port-forward esta escutando e repassando a mesma porta: 5433.
Para resolver isso é simples, basta especificar tanto a porta local quanto a porta remota (dentro do container):
$ oc port-forward postgresql-1-mdb9l 5433:5432
Pronto, agora você pode acessar o serviço no container através do endpoint local do tunel.
Comentários
0 comentário
Por favor, entre para comentar.