【Debian】4-‌2 Gitea搭建

【Debian】4-‌2 Gitea搭建

  • 一、准备工作
  • [二、创建 Gitea 用户(推荐)](#二、创建 Gitea 用户(推荐))
  • [三、下载并安装 Gitea](#三、下载并安装 Gitea)
  • 四、配置Gitea
    • [4-1 创建目录结构](#4-1 创建目录结构)
    • [4-2 创建配置目录](#4-2 创建配置目录)
  • [五、配置 Systemd 服务](#五、配置 Systemd 服务)
  • [六、访问 Gitea Web 界面](#六、访问 Gitea Web 界面)
  • 七、小插曲

一、准备工作

更新系统软件为最新

bash 复制代码
sudo apt update && sudo apt upgrade -y

安装必要依赖:数据库

Gitea 需要 Git 和数据库支持(可以使用 SQLite、MySQL 或 PostgreSQL),但先前已经在宝塔面板安装了mysql,这里就不用再安装了

二、创建 Gitea 用户(推荐)

为了安全起见,建议创建一个专门运行 Gitea 的用户:

bash 复制代码
sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/gitea gitea

三、下载并安装 Gitea

访问以下目录,下载最新版本 https://dl.gitea.io/gitea/

我这里是1.24.3

bash 复制代码
wget -O gitea https://dl.gitea.io/gitea/1.24.3/gitea-1.24.3-linux-amd64

赋予执行权限

bash 复制代码
chmod +x gitea

移动到合适目录

bash 复制代码
sudo mv gitea /usr/local/bin/

四、配置Gitea

Gitea 需要几个目录来存储数据和配置:

4-1 创建目录结构

bash 复制代码
sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo chown -R gitea:gitea /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/

4-2 创建配置目录

bash 复制代码
sudo mkdir /etc/gitea
sudo chown root:gitea /etc/gitea
sudo chmod 770 /etc/gitea

五、配置 Systemd 服务

创建一个 systemd 服务文件,方便管理 Gitea 服务。

bash 复制代码
sudo vim /etc/systemd/system/gitea.service

写入以下内容:

bash 复制代码
[Unit]
Description=Gitea (Git with a cup of tea)
After=network.target

[Service]
RestartSec=2s
Type=simple
User=gitea
Group=gitea
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web --config /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/gitea GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

启动并启用服务

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl enable --now gitea

检查状态

bash 复制代码
sudo systemctl status gitea

六、访问 Gitea Web 界面

打开浏览器,访问:

http://服务器IP:3000

首次访问会进入安装向导:

数据库类型:选择 Mysql

数据库路径:默认即可 /var/lib/gitea/data/gitea.db

应用程序路径:默认即可

端口:默认 3000

管理员账号:设置用户名、密码、邮箱

其他配置按需填写

完成后提交,Gitea 即可使用。

七、小插曲

问题1:找不到该数据库用户名或密码有误

通过控制台进去

bash 复制代码
mysql -u root -p

同时创建 gitea@localhost 和 gitea@%,并指定兼容的认证插件,注意替换你的密码

bash 复制代码
DROP USER IF EXISTS 'gitea'@'localhost';
DROP USER IF EXISTS 'gitea'@'%';

CREATE USER 'gitea'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password!!';
CREATE USER 'gitea'@'%' IDENTIFIED WITH mysql_native_password BY 'password!!';

GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost';
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'%';

FLUSH PRIVILEGES;

配置完成

注册账号

登录账号

相关推荐
自由鬼20 分钟前
如何处理Y2K38问题
java·运维·服务器·程序人生·安全·操作系统
焚膏油以继晷,恒兀兀以穷年20 分钟前
Docker设置容器时间
运维·docker·容器
Doris_LMS2 小时前
在Linux下安装nginx(保姆级别)
linux·运维·nginx·centos
北极糊的狐2 小时前
“我们无法设置移动热点”、网卡异常、电脑网络适配器没有2.4GHz 802.11n信道宽度和5.2GHz 802.11n信道宽度
运维·服务器
obboda5 小时前
Linux基础复习:字符输入与输出
linux·运维·服务器
Aspartame~7 小时前
企业级WEB应用服务器TOMCAT
java·运维·服务器·tomcat
FED_AF7 小时前
Linux救援模式之应用篇
linux·运维
拾心217 小时前
【运维基础】Linux 进程调度管理
linux·运维·服务器
羚羊角uou9 小时前
【Linux】编辑器vim和编译器gcc/g++
linux·运维·编辑器
努力一点9489 小时前
ubuntu22.04系统入门 linux入门 简单命令基础复习 实现以及实践
linux·运维·服务器·ubuntu·gpu算力