В данном примере рассмотрим установку Git Server и Gitea на чистом сервере Ubuntu 20.04.
Для начала установим основные компоненты:
apt-get install git mysql-server-8.0 mailutils
Для полноценной работы отправки почтовых уведомлений и работы Gitea рекомендуем направить на сервер домен\поддомен.
Настройка Mysql.
Запустите команду чтобы войти в консоль mysql:
mysql
Создадим пользователя и базу данных gitea с паролем 08wefwojweg для дальнейшей установки Gitea:
CREATE USER 'gitea'@'localhost' IDENTIFIED BY '08wefwojweg'; CREATE DATABASE gitea; GRANT ALL PRIVILEGES ON * . * TO 'gitea'@'localhost'; FLUSH PRIVILEGES;
Запоминаем данные, их надо будет прописать при установке Gitea.
Выйти из консоли mysql можно при помощи сочетаний клавиш Ctrl+D.
Установка Gitea
Далее скачиваем файл установки Gitea:
wget -O gitea https://dl.gitea.io/gitea/1.13.3/gitea-1.13.3-linux-amd64 chmod +x gitea
Более свежие версии можно найти на официальной странице релизов: https://dl.gitea.io/gitea/
Проверяем установлен ли git:
git --version
В нашем случае:
git version 2.25.1
Далее, необходимо создать пользователя для запуска платформы:
adduser --system --shell /bin/bash --gecos 'Git User' -group --disabled-password --home /home/git git
После чего необходимо создать структуру каталогов:
mkdir -p /var/lib/gitea/{custom,data,log} chown -R git:git /var/lib/gitea/ chmod -R 750 /var/lib/gitea/ mkdir /etc/gitea chown root:git /etc/gitea chmod 770 /etc/gitea
Настраиваем рабочий каталог Gitea:
export GITEA_WORK_DIR=/var/lib/gitea/
Копируем файлы платформы в рабочую папку:
cp gitea /usr/local/bin/gitea
Далее, создаём службу Gitea. для этого создайте файл службы:
nano /etc/systemd/system/gitea.service
Содержимое файла можно узнать по ссылке: https://github.com/go-gitea/gitea/blob/master/contrib/systemd/gitea.service
Включаем службу:
systemctl enable gitea
И запускаем:
sudo systemctl start gitea
По умолчанию платформа Gitea работает на порту 3000, посмотреть, запущена служба можно с помощью команды:
netstat -tuwnlp | grep 3000
Если служба запущена, вывод команды будет следующим:
tcp6 0 0 :::3000 :::* LISTEN 23312/gitea
Откройте в браузере ссылку: http://IP_SERVER:300 чтобы увидеть стартовую страницу. Или же, если у Вас есть полноценный домен\поддомен — ссылка будет вида: http://example.com:3000 — где, example.com — Ваш домен.
При открытии Вы увидите стартовую страницу:
Нажмите на кнопку входа вверху справа страницы — мы перейдём на страницу установки:
Заполните пункты раздела «Настройки базы данных», а именно пользователя, базу и пароль. Ниже укажите IP SSH и базовый URL (IP или домен).
Ниже укажите данные к учётной записи администратора:
Так же, в разделе «Сервер и настройки внешних служб» можете установить те, которые необходимы:
Нажмите на кнопку Установка Gitea и дождитесь окончания, после чего Вас направит на главную страницу, с которой потом можно будет залогиниться.
Работа с Gitea
Давайте проверим как работать с данной платформой. Создайте новый открытый репозиторий нажав на «+» вверху меню:
Результат будет примерно таким:
Создадим на локальной машине небольшой проект и загрузим его в созданный репозиторий.
Далее работа выполняется на локальной (другой) машине.
Для начала создадим папку с проектом:
mkdir testgit ; cd testgit
Cоздадим два файла: ping.txt и simple.txt.
touch ping.txt simple.txt
В первый запишем вывод команды «ping -c4 8.8.8.8»:
ping -c4 8.8.8.8 > ping.txt
Во второй текст:
echo "Hello World!" > simple.txt
Далее в этой же папке создаём структуру репозитория:
git init
Добавляем наш удалённый репозиторий:
git remote add origin http://gitea.goodhoster.net:3000/goodhoster/test.git
Отслеживаем все файлы в папке с проектом:
git add .
Для примера можем добавить комментарий на файлы:
git commit -m "Test Message"
Публикуем наши файлы в удалённый репозиторий:
git push -f origin master
При выполнении последней команды нам нужно ввести логин и пароль:
Username for 'http://gitea.goodhoster.net:3000': goodhoster Password for 'http://goodhoster@gitea.goodhoster.net:3000':
После чего вывод будет таким, что гласит об успешной загрузке:
Enumerating objects: 4, done. Counting objects: 100% (4/4), done. Delta compression using up to 4 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (4/4), 552 bytes | 552.00 KiB/s, done. Total 4 (delta 0), reused 0 (delta 0) remote: . Processing 1 references remote: Processed 1 references in total To http://gitea.goodhoster.net:3000/goodhoster/test.git + 7c23d34...4ac1373 master -> master (forced update)
Обновите страницу с репозиторием на на платформе Gitea и вы увидите изменения:
Обратите внимание, конфигурационный файл Gitea храниться по пути /etc/gitea/app.ini. В нём прописываются все необходимые настройки, такие как порт, база данных, базовый url, сервисы и т.д.
Больше возможностей можете узнать из официальной документации: https://docs.gitea.io/en-us/
На этом базовая настройка Git server с платформой Gitea на Ubuntu 20.04 завершена.
Всё подобранно просто супер.
Hello.
This post was created with XRumer 23 StrongAI.
Good luck :)
Поздравляю, какие слова…, замечательная мысль
KRAKEN — ссылка, зеркало, сайт,