Ist es möglich, Capistrano über einen Reverse-SSH-Tunnel auschecken zu lassen?
Ich entwickle eine Anwendung, die sich auf einem öffentlichen Host befindet, deren Quelle ich jedoch in einem Git-Repository hinter einer Unternehmens-Firewall aufbewahren muss. Ich erhalteseh müde von der Langsamkeit der Bereitstellung überscp
(Kopieren des gesamten Repositorys und Versenden über SSH bei jeder Bereitstellung) und möchten, dass der Remote-Host einfach ein @ ausführgit pull
aktualisieren. Das Problem ist, dass die Firewall eingehende SSH-Verbindungen verhindert.
Wäre es mir möglich, einen SSH-Tunnel von meinem Computer zum Bereitstellungscomputer einzurichten und mein Repository als Quelle für das @ zu verwendegit pull
? Letztendlich,git
wird verteilt, daher ist meine Kopie ein genauso gültiges Repository wie das zentrale. Wenn dies möglich ist, wie lauten der Tunnelbefehl und die Capistrano-Konfiguration?
Ich denke, der Tunnel wird so aussehen wie
ssh -R something:deployserver.com:something [email protected]