Вы здесь

Установка собственного git сервера на Ubuntu Server 16.04


Установка собственного git сервера на Ubuntu Server 16.04

Привет. Если вы пишете скрипты/конфиги/программируете, то рано или поздно вы задумывались, или обязательно задумаетесь о системе контроля версий, что бы не записывать изменения в ручную или не держать их в голове (от куда они очень быстро пропадают =) ). Всем должен быть известен github, и можно пользоваться им без проблем, если вы планируете делать публичные проекты с открытым исходным кодом. Но если вы не хотите показывать исходники другим, но при этом так же хотите получить преимущества использования git репозитория, то вам пригодится эта заметка.

В ней я покажу, как можно поставить на свой сервер git сервер — gitlab. А так же покажу как создать свой первый репозиторий.

У меня, как всегда, свеже установленная ubuntu server 16.04. Подключимся к ней и войдем в режим суперпользователя:

sudo su

Установим зависимости:

apt install ca-certificates curl openssh-server postfix

Во время установки postfix оставляем все по умолчанию, кроме имени fqdn, там, если вы планируете использовать свой сервер, так скажем публично — лучше ввести настоящее доменное имя вашего будущего git сервера.

Вводим доменное имя во время уствновки postfix

Далее скачаем и выполним скрипт установки репозиториев gitlab:

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

Далее установим собственно gitlab:

apt install gitlab-ce

Далее поправим доменное имя сайта нашего сервера:

nano /etc/gitlab/gitlab.rb

Находим тут строчку external_url и исправляем адрес на правильный (если конечно он не верный)

Изменяем доменное имя сервера gitlab

После чего остался последний шаг — запустим команду конфигурирования нашего сервера:

gitlab-ctl reconfigure

После завершения убедитесь что в вашем фаерволе открыты порты 80 (http) и 22 (ssh).

Теперь можно подключиться через веб интерфейс, можно использовать либо доменное имя (если оно у вас заведено на dns сервере или прописано в фале hosts), либо ip адрес сервера.

При первом заходе будет предложено ввести пароль администратора.

Задаем пароль администратора

Дальше можно войти в ваш аккаунт. По умолчанию имя пользователя — root.

Вход в систему

Теперь можно создать новый проект. Жмем New project.

Начальная страница

Даем имя, решаем, будет наш проект публичным, полу-публичным или закрытым, указываем описание.

Создаем новый проект

Дальше появится небольшая инструкция по дальнейшим действиям, а так же предупреждение, что нужно сгенерировать ключ ssh, нажмем по нему.

Страница после создания проекта

В новом окне будет ссылка на инструкцию как сгенерировать ключ, там все подробно написано, для разных систем. Для linux — нужно выполнить команду:

ssh-keygen -t rsa -C "[email protected]" -b 4096

Во время генерации будет задано несколько вопросов, один из которых — куда сохранить ключ. Запомните место и имя. После генерации скопируйте содержимое вашего публичного ключа (c расширением .pub),

Дальше вставьте это дело в поле key на предыдущей станице.

Вставляем наш публичный ключ

Теперь можно вернуться к проектам. И там уже воспользоваться написанными командами.

Возвращаемся к проектам

Например создадим новый репозиторий:

git clone [email protected]:root/test.git
cd test
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master

Вот и все. Можно обновить страницу и вы увидете, что ваш репозиторий создан и его можно клонировать куда угодно.

Всё готово

1 0

Поделитесь статьей с друзьями в соц. сетях, возможно, она будет им полезна.


Если вам помогла статья, вы можете >>отблагодарить автора<<