完整可直接使用的 Gitea systemd 服务配置**,适用于 Debian/Ubuntu 系列
此配置包含:
- systemd 单元文件
- Gitea 目录/权限
- 反向代理(如你用 Nginx,可选)
- 自启动
- 日志行为
你只需要复制粘贴即可部署。
✅ 一、创建 Gitea 运行目录(必做)
sudo adduser \
--system \
--shell /bin/bash \
--gecos 'Git Version Control' \
--group \
--disabled-password \
--home /home/gitea \
gitea创建目录:
sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo mkdir -p /etc/gitea权限:
sudo chown -R gitea:gitea /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/
sudo chown root:gitea /etc/gitea
sudo chmod 770 /etc/gitea✅ 二、下载 Gitea 主程序
wget -O /usr/local/bin/gitea https://dl.gitea.com/gitea/1.22.3/gitea-1.22.3-linux-amd64
chmod +x /usr/local/bin/gitea✅ 三、创建 systemd 服务文件(关键步骤)
创建文件:
sudo nano /etc/systemd/system/gitea.service写入以下内容:
[Unit]
Description=Gitea (Git with a cup of tea)
After=network.target
After=mysqld.service
After=postgresql.service
After=redis-server.service
[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=GITEA_WORK_DIR=/var/lib/gitea/
# 限制资源(可选)
LimitNOFILE=1048576
[Install]
WantedBy=multi-user.target保存退出。
✅ 四、创建 Gitea 配置文件(首次为空)
sudo touch /etc/gitea/app.ini
sudo chmod 660 /etc/gitea/app.ini
sudo chown gitea:gitea /etc/gitea/app.ini启动后 Gitea 会自动填充配置。
✅ 五、启动 Gitea
sudo systemctl daemon-reload
sudo systemctl enable --now gitea查看状态:
systemctl status gitea无报错则成功。
✔ 六、浏览器访问 Gitea
http://你的服务器IP:3000--马龙
需要安装mysql 这次安装mariadb
apt update
apt install -y mariadb-server
systemctl enable --now mariadb
安装完成进入数据库配置
mariadb
ALTER USER 'root'@'localhost' IDENTIFIED BY '54ml45re';
FLUSH PRIVILEGES;
创建项目数据库 --gitea
CREATE DATABASE gitea DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'gitea'@'localhost' IDENTIFIED BY '54ml45re';
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost';
FLUSH PRIVILEGES;
--dms
CREATE DATABASE dms DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'dms'@'localhost' IDENTIFIED BY '54ml45re';
GRANT ALL PRIVILEGES ON dms.* TO 'dms'@'localhost';
FLUSH PRIVILEGES;
出现安装页面
输入数据库配置信息
一直卡在正在安装的页面
查看错误的日志
journalctl -u gitea -n 30 --no-pager
修改gitea 用户 home
getent passwd gitea
usermod -d /var/lib/gitea gitea
mkdir -p /var/lib/gitea/.ssh
chown -R gitea:gitea /var/lib/gitea
chmod 700 /var/lib/gitea/.ssh
systemctl restart gitea
进入gitea 第一次登录是创建一个管理员账号。
