В даному прикладі розглянемо установку 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
Створимо два файли: 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 :)
Поздравляю, какие слова…, замечательная мысль