fbpx
Перейти до вмісту

Встановлення та налаштування Gitea в Docker контейнері: керівництво для розробників і DevOps фахівців.

Що таке Gitea?

Gitea – це безкоштовна та відкрита система керування репозиторіями Git, яка може бути легко встановлена та запущена в docker контейнері. Gitea забезпечує зручний інтерфейс веб-додатка для керування вашими Git-репозиторіями та різними аспектами їх розробки. Gitea може використовуватись як локально, так і в хмарному режимі.

Чому використовувати Gitea в docker контейнері?

Docker контейнер дозволяє ізолювати додаток від хостової операційної системи та його залежностей. Це робить Gitea зручним для встановлення, налаштування та використання на будь-якій платформі та в будь-якому середовищі. Docker контейнери також забезпечують масштабованість, полегшують керування залежностями та надають можливість для більш безпечного розгортання та експлуатації.

Для встановлення Gitea в Docker, на вашому сервері вже повинен бути встановлений Docker та docker-compose. Детальніше про те, як здійснити встановлення Docker + docker-compose + Portainer, ви можете прочитати в цій статті.

Створення файлів конфігурації

Створіть папку, де буде зберігатися конфігураційний файл docker-compose.yml та інші файли, пов’язані з gitea.

Створіть файл docker-compose.yml за допомогою текстового редактора та вставте наступний код:

version: "3"

services:
  server:
    image: gitea/gitea:latest
    container_name: gitea
    restart: always
    environment:
      - USER_UID=1000
      - USER_GID=1000
    volumes:
      - ./data:/data
      - ./custom:/app/gitea/custom
      - ./log:/app/gitea/log
    ports:
      - "3000:3000"
      - "2222:22"
  • image: gitea/gitea:latest – вказує на те, що ви хочете використовувати останню версію gitea, доступну в Docker Hub.
  • container_name: gitea – задає ім’я контейнера Docker.
  • restart: always – автоматично перезапускає контейнер при його зупинці.
  • environment: - USER_UID=1000 - USER_GID=1000 – встановлює ідентифікатор користувача та групу, які використовуються в контейнері.
  • volumes: - ./data:/data - ./custom:/app/gitea/custom - ./log:/app/gitea/log – визначає місцезнаходження на жорсткому диску, де будуть зберігатися дані gitea (./data), користувацькі файли конфігурації (./custom) та журнали (./log).
  • ports: - "3000:3000" - "2222:22" – визначає порти, які будуть використовуватися для доступу до gitea. Перший порт (3000) використовується для веб-інтерфейсу, а другий порт (2222) використовується для доступу до репозиторію через SSH.

Запуск контейнера з Gitea

Перейдіть у директорію, де знаходиться файл docker-compose.yml.

Запустіть контейнер за допомогою команди:

docker-compose up -d

Це запустить контейнер gitea у фоновому режимі. Перший запуск може зайняти кілька хвилин.

gitea вікно налаштування

Після запуску, відкрийте веб-браузер і введіть адресу http://server-ip:3000 для доступу до веб-інтерфейсу gitea. Ви повинні побачити сторінку входу в систему. Заповніть всі необхідні поля відповідно до вашої конфігурації. У полі Server Domain обов’язково вкажіть IP адресу або доменне ім’я, яке спрямоване на ваш сервер.

У випадку якщо при встановленні ви вказали неправильні значення, ви можете їх змінити в головному файлі конфігурації gitea, який знаходиться в /data/gitea/conf/app.ini

За замовчуванням використовується база даних SQLite, за необхідності ви можете вибрати та налаштувати MySQL або PostgresSQL.

gitea створення адміністратора

У Administrator Account Settings обов’язково вкажіть ім’я користувача та пароль для облікового запису адміністратора.

Після встановлення Gitea ми можемо приступити до створення нашого першого сховища.

Використання gitea

gitea створення репозиторію

Щоб створити новий репозиторій, виберіть у меню “Create a New Repository” і введіть ім’я та опис репозиторію.

Для клонування сховища за допомогою SSH, необхідно використати порт 2222 і команду

git clone ssh://<адреса_вашого_сервера>:2222/<ім'я_користувача>/<ім'я_репозиторію>.git

Щоб зберегти дані gitea при перезапуску або видаленні контейнера, необхідно зберегти дані, які знаходяться в папці ./data.

Це все! Тепер у вас встановлено Gitea на власному сервері в Docker контейнері.

Оновлення Gitea в Docker

Перед оновленням Gitea обов’язково зробіть резервну копію вашої директорії data. Для оновлення перейдемо в директорію, в якій у нас знаходиться файл docker-compose і виконаємо команду

docker-compose pull
docker-compose up -d