Gitlab z niestandardowym portem SSH (na maszynie wirtualnej z iptable forwarding)
Mój gitlab
jest na maszynie wirtualnej na serwerze hosta. Do maszyny wirtualnej docieram z niestandardowym portem SSH (tj. 766
), który następnie przekazywana jest reguła iptable z host:766
do vm:22
.
Więc kiedy tworzę nowe repo, Instrukcja dodawania zdalnego dostarcza mal-utworzony URL (ponieważ nie używa portu 766
. Na przykład interfejs WWW daje mi to:
Zniekształcone
Git remote add origin [email protected]:group/project.git
Zamiast adresu URL zawierający :766/
przed grupą.
Dobrze uformowane
Git remote add origin [email protected]:766/group/project.git
Więc czas utworzyć repo, muszę zrobić modyfikację ręcznie, To samo dla mojego współpracownika. Jak mogę to naprawić ?
3 answers
Jeśli poprawnie skonfigurujesz ssh_port w config / gitlab.yml, strony internetowe pokażą poprawny adres URL repo.
## GitLab Shell settings
gitlab_shell:
...
# If you use non-standard ssh port you need to specify it
ssh_port: 766
Ps. poprawny adres url to: ssh://[email protected]:766/group/project.git
Edit: po zmianie trzeba wyczyścić cache, itp:
bundle exec rake cache:clear assets:clean assets:precompile RAILS_ENV=production
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-17 16:47:35
W wersjach Omnibus-packaged można zmodyfikować tę właściwość w pliku /etc/gitlab/gitlab.rb
:
gitlab_rails['gitlab_shell_ssh_port'] = 766
Następnie musisz ponownie skonfigurować GitLab:
# gitlab-ctl reconfigure
Twoje Uri zostaną poprawnie wyświetlone jako ssh://[email protected]:766/group/project.git
w interfejsie sieciowym.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-01-28 10:43:20
Uwaga: to zostało przetestowane na starej wersji pozłacanej (v5
-v6
), i może nie być odpowiedni dla nowoczesnych instancji.
Można osiągnąć podobne zachowanie w 2-krokowym procesie:
1. Edit: config/gitlab.yml
Na serwerze Ustaw port na ten, którego używasz:
ssh_port: 766
2. Edytuj ~/.ssh/config
Na twoim komputerze dodaj następującą sekcję odpowiadającą Twojemu gitlab:
Host sub.domain.com
Port 766
Limit
Będziesz musiał powtórzyć tę operację na każdym komputer użytkownika ...
Referencje
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-09 15:39:19