gitea安装windows并实现CICD持续集成部署

前言:

本文可能需要mysql数据库配合,如果没有安装mysql数据库,可以移步这个文章:https://blog.csdn.net/yangyong1250/article/details/157734591?sharetype=blogdetail&sharerId=157734591&sharerefer=PC&sharesource=yangyong1250&spm=1011.2480.3001.8118

一、gitea下载:https://gitea.cn/gitea/gitea/releases

二、gitea配置。

1、我们把这个文件拷贝到目标安装目录下。比如d:\gitea。

下载的EXE文件,双击可执行程序即可运行起来,是个单文件绿色版。

2、运行gitea。

以管理员身份运行cmd,定位到gitea安装文件目录。运行一次gitea,建立配置文件。用如下命令运行。

gitea-1.22.1-gogit-windows-4.0-amd64.exe web

打开浏览器,访问 http://localhost:3000,Gitea 会自动创建初始配置文件 app.ini 并存储在 d:\gitea\custom\conf\ 目录下。

3、为gitea配置 数据库和用户。

注意:最好是数据库和用户都单独建立gitea名字的,并且gitea用户授权访问gitea数据库。

继续在http://localhost:3000这个地址配置,这里如果数据库选择sqllite3 ,则在数据库类型那里配置即可。

如果选择mysql ,则需要安装MySQL,使用MySQL命令行或工具(如Navicat)创建数据库gitea,并授权用户gitea访问。我选择的mysql。

最开始我只是为gitea创建了一个mysql数据库 ,账户使用的root,然后点击立即安装, 然后我的一直报错**:**数据库设置无效: invalid packet size, it is shorter than header size

截图如下:

这样怎么弄都不行,然后查了一下gitea官网 https://docs.gitea.cn/installation/database-prep ,官网对于数据库的安装部分有要求用gitea用户。

所以还是创建gitea账户吧,用管理员运行cmd命令,定位到mysql的bin目录,然后登录mysql,创建一个gitea用户,并授权此用户访问gitea数据库。注意了:我这里gitea和mysql都是安装在同一个服务器,如果数据库在远程服务器,配置又不一样了,请参考官网文档,这里不重复阐述了。

用cd 命令进入mysql的bin目录,然后执行命令:

mysql -u root -p

输入密码

CREATE USER 'gitea' IDENTIFIED BY 'gitea';

GRANT ALL PRIVILEGES ON gitea.* TO 'gitea';

FLUSH PRIVILEGES;

这么操作一通之后,还是不行,网页上点立即安装按钮,还是那个错误。还用命令查看了数据库的字符集,也没发现问题。

复制代码
show variables like 'character%';

然后,我把d:\gitea目录下开始人工建立的custom目录删除,把d:\gitea目录只读属性取消,把gitea的exe文件改了个名字,重新在cmd中运行。然后再到浏览器运行localhost:3000,点"安装按钮"按钮 又成功配置到下一步了,而且他还自动创建了几个文件夹 包括app.ini配置文件。至于为什么可以了,我真的解释不明白。

只能推测是,可能一开始不应该人工去建立custom目录和app.ini配置文件,然后安装目录要取消只读也是一种可能性。

如下几个截图:

4、配置gitea

正常情况下的配置:

根据建立好的mysql数据库,像上一步那样,对gitea设置网页进行设置,我只动了一下数据库设置部分,和下面的"服务器域名" 由 localhost 改为了gitea。

5、注册账户

上面的配置,如果没有配置管理员账户,进入登录环节之后,我们应该点注册账户,说是第一个注册登录的账户默认为管理员,那么就注册一个账户。

三、安装文件注册为 Windows 服务

以管理员身份运行cmd,输入命令,记得安装目录改成自己的(D:\gitea\gitea-1.22.1-gogit-amd64.exe),配置文件目录(D:\gitea\custom\conf\app.ini)建立起来再运行命令。

sc create gitea start= auto binPath= "\"D:\gitea\gitea-1.22.1-gogit-amd64.exe\" web --config \"D:\gitea\custom\conf\app.ini\""

sc delete gitea --这个是删除服务的命令,如果服务创建错了可以删除,没有停止服务情况下删除了要重启电脑生效。

sc start gitea --启动服务的命令。

运行启动服务的命令。或者找windows服务列表去鼠标点击启动服务 。在控制面板打开 "Windows Services",或者直接在任务管理器的 服务 列表下方,可以点"打开服务"按钮打开服务。

验证服务是否成功运行。在浏览器打开 http://localhost:3000 就可以访问了。(如果你修改了端口,请访问对应的端口,3000 是默认端口)。

四、更改配置(可选)

1、修改网页系统的管理员

(1)创建新账户。

使用上面已经注册过的账户登录系统,然后点右上角用户信息--管理后台,在左侧点身份及认证--账户管理。打开账户列表。 然后点右侧 创建新账户 按钮,在创建账户界面中输入新账户信息创建账户。

(2)给新账户设置管理员,并取消原管理员。

在账户列表中,选要设置管理员的账户,右侧点击 编辑 按钮打开编辑页面。

在编辑页面中翻页到底部位置,找到 勾选项,勾选"是管理员"、"允许创建组织" 两个选项,然后点击下面的"更新账户"按钮,更新成功并跳转到用户信息页面,可以看到这个用户已经是管理员了。

同样的方式,也可以把需要取消管理员的账户给取消权限。

(3)创建组织

在左侧列表中,点击"组织管理" 菜单,然后到右侧列表中点击"创建新的组织"按钮。

在打开的创建页面中输入组织信息,点击"创建组织"按钮。当前用户默认会加入新创建的组织。

(4)为组织加入成员

登录组织管理员账户,在他的右侧 组织 选项卡中点击组织名字进入组织信息。

在组织信息中,点击"团队"选项卡,可以看到列表中会有一个默认团队Owners。点击团队的"查看"按钮进入该团队。

在owners团队中,输入用户名(用户如果存在会提示出来,如果没提示可能用户不存在),然后点击"添加团队成员"按钮。这样就给组织和默认团队加了一个新用户了。

五、CI/CD持续集成配置(可选、待续)

相关推荐
Renhao-Wan5 小时前
基于 GitHub Actions 构建标准化 CI/CD 流水线——从手动部署到全自动化交付
ci/cd·自动化·github
Gold Steps.9 小时前
GitOps之Jenkins 构建镜像自动更新 Helm 并触发 ArgoCD 自动同步
运维·ci/cd·云原生
熠速9 小时前
CI/CD功能介绍
运维·ci/cd
苦逼IT运维2 天前
SVN 仓库目录迁移,仓库 “降级” 成子目录实战
linux·运维·ci/cd·svn·运维开发
熊猫钓鱼>_>2 天前
CI/CD开发工作流实践技术日志
运维·ci/cd·自动化
秃头摸鱼侠3 天前
OpenClaw 团队级落地手册:规范、权限、安全、CI/CD 一体化实践
数据库·安全·ci/cd·ai
barbyQAQ3 天前
GitLab CI/CD 基本用法指南
java·ci/cd·gitlab
光蛋6 天前
Jenkins+Docker 实现 Java 项目全自动 CI/CD 流水线实战指南
ci/cd
FreeBuf_6 天前
恶意Rust组件与AI机器人利用CI/CD管道窃取开发者密钥
人工智能·ci/cd·rust
程序员爱德华8 天前
Gerrit与CI
ci/cd