Am instalat GitLab în docker pe o mașină îndepărtată. Aș dori acum să redirecționez portul 8080 de la această mașină îndepărtată către portul meu local 8080.
Pe mașina îndepărtată:
sudo docker run --detach --hostname gitlab.example.com --publish 443:443 --publish 8080:80 --publish 2222:22 --name gitlab --restart always --volume $GITLAB_HOME/config:/etc /gitlab --volum $GITLAB_HOME/logs:/var/log/gitlab --volum $GITLAB_HOME/data:/var/opt/gitlab gitlab/gitlab-ce:latest
Pe mașina mea locală:
ssh -N -o "ExitOnForwardFailure da" -R 8080:localhost:8080 someuser@the-distant-server -vvv
Primesc următoarea eroare:
debug1: gaj: rețea
debug3: primire pachet: tip 80
debug1: client_input_global_request: rtype [email protected] want_reply 0
debug3: primire pachet: tip 4
debug1: La distanță: /home/someuser/.ssh/authorized_keys:1: opțiuni cheie: agent-forwarding port-forwarding pty user-rc x11-forwarding
debug3: primire pachet: tip 82
debug1: eșec de redirecționare la distanță pentru: ascultați 8080, conectați localhost:8080
Eroare: redirecționarea portului de la distanță a eșuat pentru portul de ascultare 8080
Și într-adevăr, în /var/log/auth.log
, primesc următoarea eroare:
9 iulie 16:51:42 distant-server sshd[2723782]: cheie publică acceptată pentru un utilizator de la portul 192.168.200.182 44850 ssh2: RSA SHA256:
9 iulie 16:51:42 distant-server sshd[2723782]: pam_unix(sshd:session): sesiune deschisă pentru utilizatorul someuser de (uid=0)
9 iulie 16:51:42 distant-server systemd-logind[1083]: Noua sesiune 116923 a utilizatorului someuser.
9 iulie 16:51:42 distant-server systemd[2723795]: pam_unix(systemd-user:session): sesiune deschisă pentru utilizatorul someuser de (uid=0)
9 iulie 16:51:43 distant-server sshd[2723812]: eroare: bind [127.0.0.1]:8080: Adresă deja utilizată
9 iulie 16:51:43 distant-server sshd[2723812]: eroare: channel_setup_fwd_listener_tcpip: nu pot asculta portul: 8080
9 iulie 16:51:43 distant-server sshd[2723782]: pam_unix(sshd:session): sesiune închisă pentru utilizatorul someuser
9 iulie 16:51:43 distant-server systemd-logind[1083]: Sesiunea 116923 a fost deconectată. Se așteaptă ieșirea proceselor.
9 iulie 16:51:43 distant-server systemd-logind[1083]: sesiunea 116923 a fost eliminată.
Îmi spune bind [127.0.0.1]:8080: Adresă deja utilizată
.
- Nu înțeleg cum pot asculta portul 8080 de la mașina îndepărtată dacă niciun proces nu poate scrie în el. Cred că am o înțelegere greșită a modului în care porturile/ascultarea/scrierea/ssh funcționează aici.
- Cum pot repara
ssh
comandă pentru a face acest tunel să funcționeze și pentru a accesa instanța GitLab pe my 127.0.0.1:8080
?