Centos8 安装 Gogs 代码仓库管理工具

Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。
环境
创建git用户
[root@localhost ~]# useradd git
[root@localhost ~]# echo '123456'|passwd --stdin git
Changing password for user git.
passwd: all authentication tokens updated successfully.

为git用户设置sudo

[root@localhost ~]# visudo
git     ALL=(ALL)       NOPASSWD: ALL

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具

下载并配置基本环境
[root@localhost ~]# yum -y install tar wget git mariadb mariadb-server

设置mariadb开机启动,并启动mariadb服务

[root@localhost ~]# systemctl enable mariadb --now
创建gogs数据库
# 切换到git用户
[root@localhost ~]# su - git
# 创建数据库
[git@localhost ~]$ mysql -u root -e "CREATE DATABASE IF NOT EXISTS gogs CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;"
[git@localhost ~]$ mysql -u root -e "show databases;"
+--------------------+
| Database           |
+--------------------+
| gogs               |
| information_schema |
| mysql              |
| performance_schema |
+--------------------+

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具
创建数据库gogs用户,并授予访问gogs数据库权限:

[git@localhost ~]$ mysql -u root -e "create user gogs; grant all privileges on gogs.* to gogs@'%' identified by 'gogs123';"
# 查看用户gogs是否添加,是否授予所有访问权。
[git@localhost ~]$ mysql -u root -e "select Host,User,Password from mysql.user; show grants for gogs@'%';"

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具

下载gogs安装包

从gogs的官网 https://gogs.io/docs/installation/install_from_binary 下载对应操作系统的安装包。
Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具

[git@localhost ~]$ wget https://dl.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz
[git@localhost ~]$ tar xvf gogs_0.11.91_linux_amd64.tar.gz 
启动gogs并开放防火墙的端口
[git@localhost gogs]$ sudo firewall-cmd --permanent --add-port=3000/tcp
success
[git@localhost gogs]$ sudo firewall-cmd --reload
success
[git@localhost ~]$ /home/git/gogs/gogs web

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具
打开浏览器输入服务器的ip地址,端口是3000。数据库用户和密码,使用刚才创建的。“应用URL”填写gogs服务器的ip地址。然后点击立即安装。

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具
之后,进入登录界面,我们可以创建一个新用户。

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具
进入注册页面,注册用户。

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具
注册完成,登录进去,我们可以点我的仓库,创建第一个仓库。

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具
复制仓库地址,然后再自己的操作系统中下载该仓库

Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具
在仓库中创建一个描述文件,并上传到远程仓库中。

[root@localhost ~]# git clone http://192.168.60.137:3000/user01/example01.git
Cloning into 'example01'...
warning: You appear to have cloned an empty repository.
[root@localhost ~]# cd example01/
[root@localhost example01]# echo "This is example01's README" > README.md
[root@localhost example01]# git add .
[root@localhost example01]# git config --global user.name user01
[root@localhost example01]# git config --global user.email user01@example.com
[root@localhost example01]# git commit -m "add a README.md"
[master (root-commit) 9d7df1d] add a README.md
 1 file changed, 1 insertion(+)
 create mode 100644 README.md
[root@localhost example01]# git push
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 240 bytes | 240.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
Username for 'http://192.168.60.137:3000': user01
Password for 'http://user01@192.168.60.137:3000': 
To http://192.168.60.137:3000/user01/example01.git
 * [new branch]      master -> master

远程仓库中可以看到上传成功。
Centos8 安装 Gogs 代码仓库管理工具Centos8 安装 Gogs 代码仓库管理工具

总结

部署Gogs的方式还有可以使用Docker、Vagrant、基于 Kubernetes 的 Helm Charts等方式安装。

原文地址:https://www.cnblogs.com/linuxprobe/p/14523312.html