Ubuntu 搭建 Gitea

准备工作

1. 安装必要的依赖

sudo apt update
sudo apt upgrade
sudo apt install git wget

2. 创建Gitea用户

为Gitea创建一个专用用户,以提高安全性:

sudo adduser --system --home /var/lib/gitea --group gitea

3. 安装MySQL(可选)

Ubuntu 安装 MySQL-CSDN博客

如果安装了MySQL,可以创建gitea用户和gitea_db数据库,并且赋予权限

#创建数据库
CREATE DATABASE gitea_db;#确认数据库已创建
SHOW DATABASES;#创建用户,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';

一、下载Gitea

前往Gitea的Gitea | gitea获取最新版本的下载链接。使用wget命令下载Gitea二进制文件(以下示例使用的是1.20.0版本,确保根据需要更新版本号):

wget -O gitea https://dl.gitea.io/gitea/1.20.0/gitea-1.20.0-linux-amd64

二、移动Gitea并赋予权限

将下载的Gitea文件移动到/usr/local/bin,并赋予执行权限:

sudo mv gitea /usr/local/bin/
sudo chmod +x /usr/local/bin/gitea

三、创建必要的目录

创建用于Gitea的目录并设置适当的权限:

sudo mkdir -p /var/lib/gitea/{custom,data,indexers,log}
sudo chown -R gitea:gitea /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/

四、创建配置文件

创建一个Gitea的服务配置文件:

sudo nano /etc/systemd/system/gitea.service

在文件中添加以下内容:

[Unit]
Description=Gitea
After=network.target

[Service]
User=gitea
Group=gitea
WorkingDirectory=/var/lib/gitea
ExecStart=/usr/local/bin/gitea web
Restart=always
Environment=USER=gitea GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

五、启用和启动Gitea服务

sudo systemctl enable gitea
sudo systemctl start gitea

六、配置防火墙(可选)

sudo ufw allow 3000

七、访问Gitea

在浏览器中访问 http://<你的服务器IP>:3000,这将引导你完成Gitea的设置向导。根据提示配置数据库和管理员用户等信息。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

云计算身份认证与访问控制(Cloud Computing Identity Authentication and Access Control)

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

PyEcharts教程(002):上手PyEcharts

2、上手PyEcharts&#xff08;以jupyter notebook编译&#xff09; 2.1 如何查看pyecharts版本 import pyecharts print(pyecharts.__version__)2.2 上手Pyecharts 首先绘制第一个图表 from pyecharts.charts import Bar # 创建柱形图对象 bar Bar() # 添加x轴 bar.add_xa…

Python案例--九九乘法表

乘法口诀表是学习基础数学中不可或缺的工具&#xff0c;它帮助我们快速记忆乘法结果。在这篇文章中&#xff0c;我将向你展示如何使用Python编程语言来生成一个9x9的乘法口诀表。这不仅对教育工作者和学生有用&#xff0c;而且对任何需要快速回顾乘法事实的人来说都是一个有用的…

浸没边界 直接强迫法 圆球绕流验证 阅读笔记

Combined multi-direct forcing and immersed boundary method for simulating flows with moving particles https://doi.org/10.1016/j.ijmultiphaseflow.2007.10.004 他的意思是&#xff0c;不止需要一次的直接强迫 直接强迫的次数与误差成低于二阶的关系 不知道是不是一阶…

学习使用Cube软件

一、点亮LED灯 1、新建项目 File → New → STM32 Project搜索芯片信号项目名称 弹窗点击Yes 2、点亮LED 配置GPIO为输出模式 细化配置 保存&#xff08;ctrl S&#xff09;自动生成代码 手动生成代码 选择跳转到代码页面

【机器学习】知识总结1(人工智能、机器学习、深度学习、贝叶斯、回归分析)

目录 一、机器学习、深度学习 1.人工智能 1.1人工智能概念 1.2人工智能的主要研究内容与应用领域 1.2.1主要研究内容&#xff1a; 1.2.2应用领域 2.机器学习 2.1机器学习的概念 2.2机器学习的基本思路 2.3机器学习的分类 3.深度学习 3.1深度学习的概念 3.2人工智能…

网站集群批量管理-Ansible-模块管理

1. 概述 1. 自动化运维: 批量管理,批量分发,批量执行,维护 2. 无客户端,基于ssh进行管理与维护 2. 环境准备 环境主机ansible10.0.0.7(管理节点)nfs01 10.0.0.31(被管理节点)backup10.0.0.41(被管理节点) 2.1 创建密钥认证 安装sshpass yum install -y sshpass #!/bin/bash ##…

毕设 大数据抖音短视频数据分析与可视化(源码)

文章目录 0 前言1 课题背景2 数据清洗3 数据可视化地区-用户观看时间分界线每周观看观看路径发布地点视频时长整体点赞、完播 4 进阶分析相关性分析留存率 5 深度分析客户价值判断 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕…

自然语言处理问答系统

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…

调试意义、步骤及方式

调试 文章目录 调试1.什么是bug&#xff1f;2.调试是什么&#xff1f;有多重要&#xff1f;2.1调试2.2调试的基本步骤2.3Debug和Release的介绍2.3.1常用的快捷键及功能1.F52.F9条件断点3.F104.F115.CTRLF5 3.调试的时候查看程序当前信息3.1查看临时变量的值3.1.1自动窗口3.1.2监…

力扣59.螺旋矩阵||

题目链接&#xff1a;59. 螺旋矩阵 II - 力扣&#xff08;LeetCode&#xff09; 给你一个正整数 n &#xff0c;生成一个包含 1 到 n2 所有元素&#xff0c;且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff…

Github 2024-10-06 php开源项目日报 Top10

根据Github Trendings的统计,今日(2024-10-06统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量PHP项目10Blade项目2Laravel:表达力和优雅的 Web 应用程序框架 创建周期:4631 天开发语言:PHP, BladeStar数量:75969 个Fork数量:24281 次…

HarmonyOS第一课 04 应用程序框架基础-习题分析

判断题 1.在基于Stage模型开发的应用项目中都存在一个app.json5配置文件、以及一个或多个module.json5配置文件。T 正确(True) 错误(False) 这个答案是T - AppScope > app.json5&#xff1a;app.json5配置文件&#xff0c;用于声明应用的全局配置信息&#xff0c;比如应用…

【TypeScript】知识点梳理(三)

#void前面提到了代表空&#xff0c;但有个特殊情况&#xff0c;是空不是空&#xff0c;细谈是取舍&#xff0c;但我们不深究hhh# 代码示例&#xff1a; type func () > voidconst f1: func function() {return true; } 定义了空&#xff0c;返回非空值&#xff0c;理论…

关于软件开发的ChatGPT提示词

面向软件开发人员的 ChatGPT 提示词 不会用ChatGPT就如同上图~~ 所以先推荐一波好用的提示词 1. 代码生成&#xff1a; 为名为 [name] 的 [class/module/component] 生成具有以下功能的样板 [language] 代码&#xff1a;[functionality description]。 创建一个 [语言] 函数以…

二叉树基本概念讲解

一.树的概念 1.概念 树是⼀种非线性的数据结构&#xff0c;它是由 n&#xff08;n>0&#xff09;个有限结点组成⼀个具有层次关系的集合。把它叫 做树是因为它看起来像⼀棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的。 有⼀个特殊的结点&#xff0c…

计算机的错误计算(一百一十五)

摘要 用错数定量解释计算机的错误计算&#xff08;一百一十四&#xff09;中的错误计算原因。 例1. 已知 计算 在 的错数&#xff0c;并与计算机的错误计算&#xff08;一百一十四&#xff09;中的相应错误数字个数做比较。 由 知&#xff0c; 再由 可得&#xff0c…

Ubuntu 搭建 GitLab

1. 安装依赖&#xff1a; sudo apt update sudo apt install -y curl openssh-server ca-certificates2. 添加 GitLab 包仓库&#xff1a; curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash3. 安装 GitLab&#xff1a; s…

如何判断静态代理IP地址是否被污染?

在网络使用中&#xff0c;静态IP代理是一种常见的工具&#xff0c;用于维持稳定的连接和保护个人隐私。然而&#xff0c;有时这些IP地址可能会被污染&#xff0c;导致用户遭受各种问题&#xff0c;如连接延迟、数据泄露等。因此&#xff0c;了解如何判断址是否被污染至关重要。…

时序逻辑-延一拍/打一拍?

一、时序逻辑中的同步复位和异步复位 同步复位的D触发器 同步复位的D触发器中的“同步”是和工作时钟同步的意思&#xff0c;也就是说&#xff0c;当时钟的上升沿&#xff08;也可以是下降沿&#xff0c;一般习惯上为上升沿触发&#xff09;来到时检测到按键的复位操作才有效&a…