Хостинг на сервере git легче gitlab без ssh

262
thosphor

У меня VPS с легкими ресурсами, работающий с nginx и ssh. Я не могу позволить себе добавить к нему больше ресурсов, чтобы он мог запускать gitlab (gitlab требует 4 ГБ ОЗУ). До сих пор я использовал его как git-сервер через ssh, но сейчас на работе я не могу ssh через прокси (и не хочу обойти прокси).

Мне интересно, какие решения для git-хостинга существуют для меня, чтобы я мог хотя бы клонировать из своих личных репозиториев git. Более легкая (и, возможно, только CLI) альтернатива gitlab была бы идеальной.

Не имеет особого значения, являются ли репозитории закрытыми, но предпочтительно, чтобы они были.

0

1 ответ на вопрос

1
grawity

Git поставляется с собственным git-http-backendCGI-приложением, которое обеспечивает выборку и передачу по HTTP (S). Вы найдете инструкции для нескольких наиболее распространенных веб-серверов на странице руководства. Аутентификация также осуществляется через веб-сервер (например, HTTP Basic).

Примером конфигурации только для чтения для nginx + fcgiwrap может быть:

location / { include fastcgi_params; fastcgi_param SCRIPT_FILENAME /usr/lib/git-core/git-http-backend; fastcgi_param GIT_PROJECT_ROOT /home/grawity/pub/git; fastcgi_param PATH_INFO $uri; fastcgi_param REMOTE_USER $remote_user; fastcgi_pass unix:/run/fcgiwrap.socket; } 

Обратите внимание, что git-http-backend предоставляет только удаленные операции Git, например, clone / fetch / push. Если вам также нужен графический веб-интерфейс для просмотра ваших репозиториев, он должен быть установлен отдельно. Распространенными графическими интерфейсами являются cgit, gitweb и Gitea / Gogs.

Ах, спасибо. Я слышал об этом, но у меня были проблемы с поиском, как настроить его, так как `git server` или поиски, как будто он всегда говорит о ssh. Наличие поискового термина `git http backend` очень полезно. thosphor 6 лет назад 0