Легковесный git-сервис на своем сервере.
Ставим на чистый Centos7.
1.установим нужные пакеты.Подерживает несколько СУБД,в том числе привычный mysql.
yum install mariadb mariadb-server git
mysql_secure_installation
mysql -u root -p
CREATE DATABASE IF NOT EXISTS gogs CHARACTER SET utf8 COLLATE utf8_general_ci;
— Сразу создаем нужную бд
2.Создадим пользователя,который будет этим рулить.И необходимые каталоги
useradd git
mkdir /opt/gogs
— каталог gogs
mkdir /opt/my_git
— каталог git
chown -R git:git /opt/*
— выставляем владельца
3.Дальше можно под пользователем
su git
cd /opt/gogs
wget https://dl.gogs.io/0.11.29/linux_amd64.tar.gz
— Качаем gogs,я не заморачивался со сборкой и взял готовый бинарник
Распаковываем в /opt/gogs
4.Выходим обратно в root и делаем сервис для системды
cat /usr/lib/systemd/system/gogs.service
[Unit]
Description=Gogs
After=syslog.target
After=network.target
After=mariadb.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
Type=simple
User=git
Group=git
WorkingDirectory=/opt/gogs
ExecStart=/opt/gogs/gogs web
Restart=always
Environment=USER=git HOME=/home/git
[Install]
WantedBy=multi-user.target
Вроде всё.Запускаем и включаем как обычно systemct start gogs
systemct enable gogs
Идем в http://ip_servera:3000 , и завершаем установку.
Если вдруг потом захочется прикрутить доменное имя,то можно настроить что-либо в качестве обратного прокси.как написано в оф.доке https://gogs.io/docs/intro/faqs