IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> Gitea:私有部署Git托管服务 -> 正文阅读

[开发工具]Gitea:私有部署Git托管服务

目录

git和Gitea简介

?服务端部署

?部署环境概览

创建操作系统用户

下载并解压

????????修改初始配置


git和Gitea简介

git 是一个开源的分布式版本控制系统,用途类使用SVN的版本控制和多人协同,但不同于SVN的是,git在设计之初即是分布式。

基于git版本控制技术,出现了github、gitlab等托管平台,不过这些托管平台是对公网服务。而Gitea 是一个可自己私有部署,自行托管的Git服务程序。他和GitHub, Bitbucket or Gitlab等比较类似。他是从 Gogs 发展而来。

本文通过Gitea在私有服务器环境搭建git的自有托管平台(私有化部署)

?服务端部署

  1. ?部署环境概览

Linux服务器

IP:20.200.54.51

已经安装git 1.8.3.1软件。

(若无则通过yum install git 安装)

gitea版本

gitea-1.16.6-linux-amd64

https://dl.gitea.io/gitea/1.16.6/gitea-1.16.6-linux-amd64

gitea运行用户

操作系统用户:gitea

为了规范和权限隔离,建立专门用户

gitea数据库

"postgres://gitea@20.200.54.51/giteadb"

数据库创建见后文

gitea仓存放目录

/app/gitea/data/gitea-repositories

服务端所有仓存放的基目录

gitea Web界面

http://20.200.54.51:3000

内部使用,不启用HTTPS

准备数据库(PostgreSQL)

Gitea需要使用数据库用于保存用户、权限、工程、评论、通知、任务等信息。

可以选择MySQL或PostgreSQL 其一即可。本节以PostgreSQL 10.5为例。

1、安装PostgreSQL服务端软件(过程略)

2、通过psql客户端登录,创建gitea专用的数据库连接用户

CREATE ROLE gitea WITH LOGIN PASSWORD 'gitea';

3、通过psql客户端登录,创建database和schema

CREATE DATABASE giteadb WITH OWNER gitea ?ENCODING UTF8 LC_COLLATE 'zh_CN.UTF-8' LC_CTYPE 'zh_CN.UTF-8';

\c giteadb?gitea; ?????-- 以gitea用户登录至giteadb数据库

CREATE SCHEMA?giteadb;

alter role gitea set search_path=giteadb,public;?????-- 设置search_path

4、根据实际情况修改pg_hba.conf,允许客户端访问PostgreSQL数据库

5、创建对象和数据初始化(无需执行,由gitea软件连上后自动完成初始化动作)。

准备数据库(MySQL)

Gitea需要使用数据库用于保存用户、权限、工程、评论、通知、任务等信息。

可以选择MySQL或PostgreSQL 其一即可。本节以MySQL 8.0为例。

1、安装MySQL软件(过程略)

2、通过mysql客户端登录,创建gitea专用的数据库连接用户

CREATE USER 'gitea'@'%' IDENTIFIED BY 'gitea';

3、通过mysql客户端登录,创建database(既schema)

CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';

4、赋予权限

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

FLUSH PRIVILEGES;

  1. 创建对象和数据初始化(无需执行,由gitea软件连上后自动完成初始化动作)。

???????创建操作系统用户

在操作系统使用root用户执行以下命令,创建gitea运行专用用户如下

adduser --home /app/gitea gitea

???????下载并解压

使用gitea用户登录,下载并运行

#若能访问公网,则可以直接下载

wget?https://dl.gitea.io/gitea/1.16.6/gitea-1.16.6-linux-amd64

#解压(只有一个单文件)

xz -d gitea-1.16.6-linux-amd64.xz

chmod +x gitea-1.16.6-linux-amd64

????????修改初始配置

通常有两种方式:

  • 提前准备好ini配置文件,可在启动时通过-c参数指定ini配置文件
  • 由gitea自动生成配置文件。(下文介绍此方式)

  1. 使用gitea用户登录,首次运行。

./gitea-1.16.6-linux-amd64

首次运行时,gitea会自动生产配置文件custom/conf/app.ini

  1. 通过浏览器首次访问:http://20.200.54.51:3000??因刚安装干净的,会自动出现初始配置界面如下。

?

通过在以上Web初始界面编辑的配置内容后,会自动完成对数据库对象初始化工作;自动写入到custom/conf/app.ini配置文件中(用户创建在数据库表中)。得到的配置文件custom/conf/app.ini内容如下:

APP_NAME = 自有Gitea托管平台

RUN_USER = gitea

RUN_MODE = prod

[security]

INTERNAL_TOKEN ????= eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYmYiOjE2NDE3ODA2MDl9.xxBOCQegIwfFN_b1fJc4K9kR_HyolPqNo50rbEm9Wik

INSTALL_LOCK ??????= true

SECRET_KEY ????????= VtCdLtEnpt101aMZ1B24NdGq8KpijaG9pVfVCfugyYNcWuqSVjU3eRR0GJ3QlDWe

PASSWORD_HASH_ALGO = pbkdf2

[database]

DB_TYPE ?= postgres

HOST ????= 20.200.54.51:5432

NAME ????= giteadb

USER ????= gitea

PASSWD ??= gitea

SCHEMA ??= giteadb

SSL_MODE = disable

CHARSET ?= utf8

PATH ????= /app/gitea/data/gitea.db

LOG_SQL ?= false

[repository]

ROOT = /app/gitea/data/gitea-repositories

[server]

SSH_DOMAIN ??????= 20.200.54.51

DOMAIN ??????????= 20.200.54.51

HTTP_PORT ???????= 3000

ROOT_URL ????????= http://20.200.54.51:3000/

DISABLE_SSH ?????= false

SSH_PORT ????????= 22

LFS_START_SERVER = true

LFS_CONTENT_PATH = /app/gitea/data/lfs

LFS_JWT_SECRET ??= u_pQCSJ763rPl3L3fvnXFhoddcEGIPNyDCmcNZTk7B4

OFFLINE_MODE ????= false

[mailer]

ENABLED = false

[service]

REGISTER_EMAIL_CONFIRM ???????????= false

ENABLE_NOTIFY_MAIL ???????????????= false

DISABLE_REGISTRATION ?????????????= true

ALLOW_ONLY_EXTERNAL_REGISTRATION ?= false

ENABLE_CAPTCHA ???????????????????= false

REQUIRE_SIGNIN_VIEW ??????????????= false

DEFAULT_KEEP_EMAIL_PRIVATE ???????= false

DEFAULT_ALLOW_CREATE_ORGANIZATION = true

DEFAULT_ENABLE_TIMETRACKING ??????= true

NO_REPLY_ADDRESS ?????????????????= noreply.localhost

[picture]

DISABLE_GRAVATAR ???????= false

ENABLE_FEDERATED_AVATAR = true

[openid]

ENABLE_OPENID_SIGNIN = true

ENABLE_OPENID_SIGNUP = false

[session]

PROVIDER = file

[log]

MODE ?????= console

LEVEL ????= info

ROOT_PATH = /app/gitea/log

ROUTER ???= console

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-05-01 15:56:38  更:2022-05-01 15:57:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 2:36:22-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码