- LINUX
- GIT
- DOCKER
- DOCKERFILE
- DOCKER-COMPOSE
- DOCKERSWARM
- KUBERNETES
- ANSIBLE
- BASH
- DOCKERFILE
- DOCKER-COMPOSE
- JENKINSFILE
- JENKINS-PIPELINE
- GITLAB CI/CD
- GROOVIE
- INSTALL
- PODS
- INGRESS
Установка Gitea
Gitea - вполне себе удобный репозиторий контроля версий, который может подойти и в качестве домашнего сервера контроля версия или для вашей команды разрабов. Быстро поднимается. Легко работать. Рекомендую.
Ну, а теперь к установке...
В прошлый раз мы уже поставили MariaDB. Перед началом установки создайте базу и пользователя gitea.
Теперь нам нужно выяснить, какой последний релиз Gitea. Его можно посмотреть тут... Номер релиза нам еще понадобится. Скопируйте его без буквы v
Введите в терминале следующие команды:
VERSION=<THE_LATEST_GITEA_VERSION>
wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64
sudo mv /tmp/gitea /usr/local/bin
И сделайте файл исполняемым.
sudo chmod +x /usr/local/bin/gitea
Затем, по рекомендации Gitea, создайте следующие папки с разрешениями:
sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
sudo chown git:git /var/lib/gitea/{data,indexers,log}
sudo chmod 750 /var/lib/gitea/{data,indexers,log}
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea
Теперь сделаем так, что бы Gitea была частью системы и создадим для него сценарий systemd:
sudo nano /etc/systemd/system/gitea.service
Скопируйте и вставьте туда содержимое ниже:
[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
#After=mysqld.service
#After=postgresql.service
#After=memcached.service
#After=redis.service
[Service]
# Modify these two values and uncomment them if you have
# repos with lots of files and get an HTTP error 500 because
# of that
###
#LimitMEMLOCK=infinity
#LimitNOFILE=65535
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
# If you want to bind Gitea to a port below 1024 uncomment
# the two values below
###
#CapabilityBoundingSet=CAP_NET_BIND_SERVICE
#AmbientCapabilities=CAP_NET_BIND_SERVICE
[Install]
WantedBy=multi-user.target
После обновите список демонов и запустите сервис Gitea
sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea
Затем проверьте, все ли запустилось:
sudo systemctl status gitea
Если вы увидите примерное следующее, то поздравляю. Gitea запустилась.
gitea.service - Gitea (Git with a cup of tea)
Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: en
Active: active (running) since Fri 2019-04-26 10:52:32 CDT; 11s ago
Main PID: 7118 (gitea)
Tasks: 6 (limit: 4683)
CGroup: /system.slice/gitea.service
└─7118 /usr/local/bin/gitea web -c /etc/gitea/app.ini
Apr 26 10:52:32 ubuntu1804 gitea[7118]: 2019/04/26 10:52:32 [T] Log path: /var/l
Apr 26 10:52:32 ubuntu1804 gitea[7118]: 2019/04/26 10:52:32 [I] Gitea v1.8.0 bui
Apr 26 10:52:32 ubuntu1804 gitea[7118]: 2019/04/26 10:52:32 [I] Log Mode: Consol
Apr 26 10:52:32 ubuntu1804 gitea[7118]: 2019/04/26 10:52:32 [I] XORM Log Mode: C
Apr 26 10:52:32 ubuntu1804 gitea[7118]: 2019/04/26 10:52:32 [I] Cache Service En
Apr 26 10:52:32 ubuntu1804 gitea[7118]: 2019/04/26 10:52:32 [I] Session Service
lines 1-18/18 (END)
Перейдите к серверу, где установлена Gitea: https://localhost:3000/install
Введите информацию о подключении к базе данных. Настройте аккаунт администратора. После установки вы сможете войти в систему и использовать Gitea в качестве службы git.
Да. Если кому интересен конфиг Gitea, который использую я, то вот он. Но, думаюm с этим вы уже и сами справитесь.
APP_NAME = Свой GitHub с блекджеком и ..
RUN_USER = GIT
RUN_MODE = prod
[oauth2]
JWT_SECRET = KEY
[security]
INTERNAL_TOKEN = TOKEN
INSTALL_LOCK = true
SECRET_KEY = KEY
[database]
DB_TYPE = mysql
HOST = 127.0.0.1:3306
NAME = DB
USER = USER
PASSWD = PASSWORD
SSL_MODE = disable
CHARSET = utf8
PATH = /usr/local/bin/data/gitea.db
[repository]
ROOT = /storage/gitea
[server]
SSH_DOMAIN = git.antropoff.ru
DOMAIN = localhost
HTTP_PORT = 3333
ROOT_URL = https://git.antropoff.ru/
DISABLE_SSH = true
SSH_PORT = 22
LFS_START_SERVER = true
LFS_CONTENT_PATH = /usr/local/bin/data/lfs
LFS_JWT_SECRET = SECRET
OFFLINE_MODE = false
[mailer]
ENABLED = true
HOST = localhost:25
FROM = git@antropoff.ru
USER =
PASSWD =
[service]
REGISTER_EMAIL_CONFIRM = true
ENABLE_NOTIFY_MAIL = true
DISABLE_REGISTRATION = false
ALLOW_ONLY_EXTERNAL_REGISTRATION = false
ENABLE_CAPTCHA = true
REQUIRE_SIGNIN_VIEW = false
DEFAULT_KEEP_EMAIL_PRIVATE = true
DEFAULT_ALLOW_CREATE_ORGANIZATION = false
DEFAULT_ENABLE_TIMETRACKING = true
NO_REPLY_ADDRESS = noreply@antropoff.ru