Windows 搭建 Gitea

一、准备工作

1. 安装 Git:Gitea 依赖 Git 进行代码管理,所以首先需要确保系统中安装了 Git。

下载地址:https://git-scm.com/downloads/win

2. 安装数据库(可选)

默认情况下,Gitea 使用 SQLite 作为内置的轻量级数据库,但如果需要,可以安装 MySQL 或 PostgreSQL 数据库来提升性能和扩展性。

二、安装 Gitea

1. 下载 Gitea:Gitea | gitea

2. 移动到安装目录:将下载的 Gitea 二进制文件移动到您希望安装的目录,比如 C:\Gitea

3. 将文件重命名为 gitea.exe,方便管理

4. 创建必要的目录

mkdir C:\Gitea\data
mkdir C:\Gitea\log
mkdir C:\Gitea\custom

三、运行 Gitea

1. 打开 PowerShell,进入到 Gitea 的安装目录,运行以下命令启动 Gitea:

C:\Gitea\gitea.exe web

2. 在浏览器访问http://localhost:3000

四、配置 Gitea

1. 一般配置选择默认

2. 创建管理员账号

五、设置为服务(可选)

为了方便 Gitea 在每次开机时自动运行,可以将 Gitea 设置为 Windows 服务

1. 下载NSSM工具:NSSM - the Non-Sucking Service Manager

2. 将 nssm.exe 文件放到一个目录中,比如 C:\nssm\nssm.exe

3. 注册 Gitea 服务。打开命令提示符或 PowerShell,输入以下命令:

C:\nssm\nssm.exe install Gitea

        这将打开一个 GUI 窗口,填写以下信息:

        1.)Path:选择 C:\Gitea\gitea.exe

        2.)Startup directory:填写 C:\Gitea

        3.)Arguments:填写 web

 4. 使用命令启动 Gitea 服务:

nssm start Gitea

补充:

问题一:数据库设置无效,Error 1045

数据库设置无效: Error 1045 (28000): Access denied for user 'gitea'@'localhost' (using password: YES),这个错误表示 MySQL 数据库无法验证 gitea 用户的身份。这个错误通常是因为用户名或密码错误,或者用户权限不足。以下是解决此问题的一些步骤:

1. 检查用户名和密码

mysql -u gitea -p

2. 创建 MySQL 用户并赋权

mysql -u root -p
#创建用户,your_password 替换为您想要的密码
CREATE USER 'gitea'@'localhost' IDENTIFIED BY 'your_password';#赋予权限,Gitea 数据库名为 gitea_db
GRANT ALL PRIVILEGES ON gitea_db.* TO 'gitea'@'localhost';#刷新权限
FLUSH PRIVILEGES;#确认权限
SHOW GRANTS FOR 'gitea'@'localhost';

3. 检查 MySQL 绑定地址。如果 gitea 用户的权限是针对 localhost 的,而 Gitea 尝试通过其他方式连接(比如使用服务器的 IP 地址),也会导致权限问题

4. 检查防火墙设置。确保数据库端口没有被防火墙阻挡,尤其是在不同机器上运行 Gitea 和 MySQL 的情况下

问题二:数据库设置无效,Error 1049

数据库设置无效: Error 1049 (42000): Unknown database 'gitea_db',表示 MySQL 数据库中不存在名为 gitea_db 的数据库。要解决这个问题,您需要确保数据库已经创建。以下是详细的解决步骤:

1. 登录 MySQL

mysql -u root -p

2. 创建数据库

CREATE DATABASE gitea_db;

3. 确认数据库已创建

SHOW DATABASES;

4. 赋予用户权限

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

5. 测试连接。如果可以成功连接并进入数据库,说明设置是正确的。

mysql -u gitea -p gitea_db

问题三:配置 Gitea 使用 163 邮箱

1. 获取 SMTP 服务密码

1.)登录 163 邮箱网页端

2.)进入设置 -> POP3/SMTP/IMAP 选项,启用 SMTP 和 POP3/IMAP 服务

3.)生成一个授权码,记下该授权码,后面会在配置中使用

2. 配置 Gitea 邮件设置

打开 Gitea 的配置文件 custom/conf/app.ini,并找到 [mailer] 部分。如果没有该部分,可以手动添加。然后按照以下配置进行设置:

[mailer]
ENABLED = true
HOST = smtp.163.com:465
FROM = 你的邮箱
USER = 你的邮箱
PASSWD = 你的授权码
IS_TLS_ENABLED = true

问题四:OpenService(): 拒绝访问

切换管理员模式重新执行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/881401.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springboot 前后端处理日志

为了实现一个高效且合理的日志记录方案,我们需要在系统架构层面进行细致规划。在某些情况下,一个前端页面可能会调用多个辅助接口来完成整个业务流程,而并非所有这些接口的交互都需要被记录到日志中。为了避免不必要的日志开销,并…

基于STM32的简易交通灯proteus仿真设计(仿真+程序+设计报告+讲解视频)

基于STM32的简易交通灯proteus仿真设计(仿真程序设计报告讲解视频) 仿真图proteus 8.9 程序编译器:keil 5 编程语言:C语言 设计编号:C0091 **1.**主要功能 功能说明: 以STM32单片机和数码管、LED灯设计简易交通…

无人自助超市系统小程序源码开发

随着科技的飞速发展和消费模式的转变,无人自助超市作为一种新兴的商业模式,以其便捷性、高效率以及对“体验式购物”的完美诠释,受到了广泛关注。本文renxb001将深入探讨无人自助超市系统小程序源码开发的核心环节和技术要点。 一、系统需求分…

RNN--详解

RNN 1. 概述 循环神经网络 (Recurrent Neural Network, RNN) 是一种专门用于处理序列数据的神经网络模型。与传统的前馈神经网络不同,RNN 具有循环结构,能够处理时间序列和其他顺序依赖的数据。其关键在于可以利用前一个时刻的信息,通过隐状…

红帽7—Mysql路由部署

MySQL Router 是一个对应用程序透明的InnoDB Cluster连接路由服务,提供负载均衡、应用连接故障转移和客户端路 由。 利用路由器的连接路由特性,用户可以编写应用程序来连接到路由器,并令路由器使用相应的路由策略 来处理连接,使其…

Jedis多线程环境报错:redis Could not get a resource from the pool 的主要原因及解决办法。

本篇文章主要讲解,Jedis多线程环境报错:redis Could not get a resource from the pool 的主要原因及解决办法。 作者:任聪聪 日期:2024年10月6日01:29:21 报错信息: 报文: redis Could not get a resou…

云原生日志ELK( logstash安装部署)

logstash 介绍 LogStash由JRuby语言编写,基于消息(message-based)的简单架构,并运行在Java虚拟机 (JVM)上。不同于分离的代理端(agent)或主机端(server)&…

Spring Boot驱动的现代医院管理系统

1系统概述 1.1 研究背景 如今互联网高速发展,网络遍布全球,通过互联网发布的消息能快而方便的传播到世界每个角落,并且互联网上能传播的信息也很广,比如文字、图片、声音、视频等。从而,这种种好处使得互联网成了信息传…

【斯坦福CS144】Lab5

一、实验目的 在现有的NetworkInterface基础上实现一个IP路由器。 二、实验内容 在本实验中,你将在现有的NetworkInterface基础上实现一个IP路由器,从而结束本课程。路由器有几个网络接口,可以在其中任何一个接口上接收互联网数据报。路由…

【uniapp小程序】使用cheerio去除字符串中的HTML标签并获取纯文本内容

【uniapp小程序】使用cheerio去除字符串中的HTML标签并获取纯文本内容 参考资料安装引入使用 参考资料 【博主:AIpoem】uniapp小程序 使用cheerio处理网络请求拿到的dom数据 cheerio文档:https://github.com/cheeriojs/cheerio/wiki/Chinese-README 安…

Sequelize 做登录查询数据

在 Sequelize 中处理登录请求通常意味着你需要根据提供的用户名或电子邮件以及密码来查询数据库中的用户。由于密码在数据库中应该是以哈希形式存储的,因此你还需要验证提供的密码是否与存储的哈希密码匹配。 以下是一个简单的例子,展示了如何使用 Sequ…

SpringBoot美发门店系统:提升服务质量

摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了美发门店管理系统的开发全过程。通过分析美发门店管理系统管理的不足,创建了一个计算机管理美发门店管理系统的方案。文章介绍了美发门店管理系统的系…

SpringBoot访问web中的静态资源

SpringBoot访问web中的静态资源,有两个方式: 1、SpringBoot默认指定了一些固定的目录结构,静态资源放到这些目录中的某一个,系统运行后浏览器就可以访问到 ① 关键是SpringBoot默认指定的可以存放静态资源的目录有哪些&#xff…

U mamba配置问题;‘KeyError: ‘file_ending‘

这个错误仍然是因为在 dataset_json 中找不到 file_ending 键。请尝试以下步骤: 检查 JSON 文件:确认 JSON 文件中确实有 file_ending,并且它的拼写完全正确。 打印 JSON 内容:在抛出异常之前,添加打印语句输出 datas…

JavaScript 数组简单学习

目录 1. 数组 1.1 介绍 1.2 基本使用 1.2.1 声明语法 1.2.2 取值语法 1.2.3 术语 1.3 案例 1. 数组 1.1 介绍 1.2 基本使用 1.2.1 声明语法 1.2.2 取值语法 1.2.3 术语 1.3 案例

Python知识点:如何应用Python工具,使用NLTK进行语言模型构建

开篇,先说一个好消息,截止到2025年1月1日前,翻到文末找到我,赠送定制版的开题报告和任务书,先到先得!过期不候! 如何使用NLTK进行语言模型构建 在自然语言处理(NLP)中&a…

pikachu靶场总结(三)

五、RCE 1.RCE(remote command/code execute)概述 RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。 远程系统命令执行 一般出现这种漏洞,是因为应用系统从设计上需要给用户提供指定的远程命令操作的…

基于SpringBoot和Vue的餐饮管理系统

基于springbootvue实现的餐饮管理系统 (源码L文ppt)4-078 第4章 系统设计 4.1 总体功能设计 一般个人用户和管理者都需要登录才能进入餐饮管理系统,使用者登录时会在后台判断使用的权限类型,包括一般使用者和管理者,一…

星融元P4交换机:在全球芯片短缺中,为您的网络可编程之路保驾护航

当数字化转型成为新常态,云计算、物联网、5G和人工智能等技术正以惊人的速度进步,重塑了我们对网络设备性能和适应性的预期。在这场技术革新的浪潮中,网络的灵活性、开放性和编程能力成为了推动行业发展的关键。P4可编程交换机,以…

飞驰云联入围2024西门子Xcelerator公开赛50强

近日,备受瞩目的西门子 Xcelerator公开赛公布结果,经过激烈的筛选,Ftrans飞驰云联《Ftrans制造业数据交换安全管控解决方案》凭借优异的表现,成功入围 Xcelerator公开赛50强! Xcelerator 公开赛以工信部智能制造典型场…