基于Gitea搭建属于自己的Git服务

作者:IT王小二
博客:https://itwxe.com

一、搭建环境和前提

搭建环境:

操作系统:CentOS7.6

Docker版本:docker-ce-18.09.9

Lsky Pro版本:1.6.3

MySQL版本:5.7

安装前提

Gitea 可以使用 MySQL、PostgreSQL、MSSQL、SQLite3 作为数据库存储,如果你对其中某个数据库熟悉可以选择相应的数据库,我选择的是 MySQL。

所以前提需要安装好 Docker 和 MySQL,如果你已经有这两个环境了,那么可以跳过这个步骤;如果没有这两个环境小伙伴可以分别查看下面两篇文章。

安装好 MySQL 之后需要创建数据库 gitea,后面配置需要用到,命令和截图如下:

# 进入docker mysql容器
docker exec -it mysql /bin/bash
# 登录MySQL
mysql -uroot -p
# 创建数据库lsky
create database if not exists gitea default character set = 'utf8mb4';
# 可选操作,创建一个用户名gitea密码123456的账号来专门连接gitea数据库,用户名密码自定义后要记住喽,后面配置要用到
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'%' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;

创建gitea数据库

二、Docker安装Gitea

gitea官方中文文档地址:https://docs.gitea.io/zh-cn/install-with-docker/

启动gite容器运行命令:

docker run -d --restart=always --name=gitea -p 10022:22 -p 13000:3000 -v /itwxe/dockerData/gitea:/data gitea/gitea:1.14.6

启动Gitea容器

启动容器后我是需要结合域名来访问的,所以在域名服务商控制台配置域名映射后,Nginx 配置参考如下:

    server {
        listen 443 ssl;
        server_name gitea.itwxe.com;
        ssl_certificate /usr/local/nginx/ssl/any/fullchain.cer;
        ssl_certificate_key /usr/local/nginx/ssl/any/itwxe.com.key;
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout 30m;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_ciphers HIGH:!aNULL:!MD5:!EXPORT56:!EXP;
        ssl_prefer_server_ciphers on;
        proxy_connect_timeout 500;
        proxy_send_timeout 500;
        proxy_read_timeout 500;
        client_max_body_size 50m;

        location / {
            proxy_pass http://127.0.0.1:13000;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header REMOTE-HOST $remote_addr;
        }
    }

配置完成后 nginx -t 验证配置是否正确,正确则 nginx -s reload 重新加载 Nginx。

访问配置的域名,开始界面配置安装,其中几个地方要注意。

Gitea配置

下面还有一些可选设置,按自己的需求设置就行了。

Gitea可选设置

设置之后点击立即安装,安装完成之后就可以看到主界面长啥样了。

安装完成界面

到了这一步Gitea就算搭建完成了,完成了之后呢,我们创建个仓库来看下是否可以正常上传。测试的仓库就用我博客代码来测试一下。

首先创建一个仓库,这个就不用多说了吧,全界面化操作,点点点就完事了,创建完成的界面和按钮如图。

blogSite仓库创建完成

然后本地就是 Git 操作了,如图也提示了怎么提交到远程仓库,这个就是Git基本功了,不多赘述,需要使用 SSH 方式操作的自行配置 SSH,一般我都是 https,个人提交结果如下。

blogSite提交结果

到这里,基于 Gitea 搭建属于自己的 Git 服务就完成了。

都读到这里了,来个 点赞、评论、关注、收藏 吧!

posted @ 2021-08-15 16:48  IT王小二  阅读(448)  评论(0编辑  收藏  举报