自搭建 Gitea

1panel + gitea + docker + cloudflare + 反代 教程

准备

  • 服务器

  • Cloudflare 账号

  • 域名


SSH 连接到服务器, 安装 1panel

RedHat/CentOS

curl -SSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sh quick_start.sh

Ubuntu

curl -SSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh

Debian

curl -SSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh

openEuler/ 其他系统

  • 安装 docker
curl -SSL https://linuxmirrors.cn/docker.sh
  • 安装 1Panel
curl -SSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sh quick_start.sh

浏览器进入 1panel 中, 找到商店管理

安装 Mysql

  • 版本 5.7+ 不要打开外部访问 image.png image.png

Gitea 安装与 SSH 配置

安装 Gitea

image.png image.png 打开外部端口访问, 域名可访问后记得关上

  • SSH 端口建议: 推荐使用默认端口 22,若选择其他端口(如 222 ),后续 Git 操作需使用格式: git@XX:222 若可接受此格式可跳过修改到此处 点击跳转

修改 SSH 配置文件

使用编辑器打开配置文件:
sudo vi /etc/ssh/sshd_config

或者在 1panel 系统 > 文件中打开 (建议)

找到并修改端口参数, 取消注释

# Port 22
改为
Port 2223

  • vim 操作说明:

    • i 进入编辑模式

    • 删除 # 取消注释

    • 修改端口号后,按 ESC → 输入 :wq 保存退出

重启 SSH 服务
sudo systemctl restart sshd

Gitea 配置

跳过端口修改
默认是 ip:3000 以下部分可以不用修改
image.png

确认信息

image.png

开启电子邮件通知

这部分可参考 知乎 - 如何开启 QQ SMTP
可使用第三方 Email Sending Service
image.png

创建管理员账号

image.png

打开Cloudflare

如果域名商有免费 SSL 证书, 那就用 , 跳过这步, 主要是泛域名太贵,cf 可以免费, 如果你只搭建 Gitea 那么推荐到原服务商获取证书

添加域

image.png

修改 DNS

按提示修改服务商 默认 DNS 为 CF 的 DNS 解析域名, 由于 SSH 的局限性不使用代理, 打开代理后 SSH 连接到的是代理主机
image.png

SSL 证书

创建证书 -> 下载证书
image.png
修改加密为完全 (严格)
image.png

导入证书

拿到证书后回到 1panel 点击 网站 -> 证书 -> 上传证书 填写信息或导入
image.png

反向代理

然后点击 网站 -> 创建 , 选择反向代理
image.png

开启 HTTPS

确定后点击网站 配置 开启 HTTPS,
image.png关闭 Gitea 外部端口访问, 只允许域名访问

到此结束 可以通过域名正常访问了, 也可以通过 SSH 拉取推送

测试一下

添加公钥

image.png

本地命令行输入

SSH -T git@域名

如果出现以下返回就没问题了
Hi there, XXXX! You've successfully authenticated with the key named Gitea, but Gitea does not provide shell access.

评论