Heim > Entwicklungswerkzeuge > Idiot > So erstellen Sie Ihren eigenen Github über Gogs unter Linux

So erstellen Sie Ihren eigenen Github über Gogs unter Linux

PHPz
Freigeben: 2023-03-31 14:23:49
Original
976 Leute haben es durchsucht

随着Github的逐渐普及,越来越多的人会选择在其中建立自己的项目,也就是在Github上发表自己的代码。然而,Github限制了单个账户上能建立的私人库的数量,所以一些高频使用者可能需要通过其他途径来建立自己的代码库。在这个时候,自己搭建Github就成为了一个选择。本文主要介绍在Linux系统下,通过Gogs搭建自己的Github,以解放Github账户的限制。

一、安装环境

在开始搭建前,需要确保系统安装了相应的环境:

  1. MySQL or PostgreSQL
  2. Go >= 1.12.x
  3. Git >= 1.7.1 (2.x recommended)

对于Ubuntu系统,可以通过以下命令安装MySQL:

sudo apt-get update
sudo apt-get install mysql-server
Nach dem Login kopieren

Go的安装方式可以在官网中下载对应的安装包并按照说明进行处理。

对于某些版本的Ubuntu或Debian系统,可能没有安装git-core,需要进行安装:

sudo apt-get update
sudo apt-get install git-core
Nach dem Login kopieren

二、安装Gogs

  1. 从Github上下载Gogs的最新版本并解压到该目录下:
wget https://dl.gogs.io/gogs_latest_linux_amd64.tar.gz
tar xvfz gogs_latest_linux_amd64.tar.gz
Nach dem Login kopieren
  1. 进入下载的Gogs目录,执行安装:
cd gogs
./gogs install
Nach dem Login kopieren

在执行安装时需要输入以下内容:

Do you want to install as Windows service/daemon? (y/n)
n
Nach dem Login kopieren
Please enter the URL: (e.g. http://domain.com[:port] or http://[IP]:[port])
http://localhost:3000
Nach dem Login kopieren

接下来的安装步骤会要求输入一些数据库相关的内容,需要你根据自己的需求进行配置。这里建议使用MySQL作为数据库,并在这一步中安装第2台服务器。

在需要填写Git信息时,需要注意将使用的ssh-key添加到GitHub上。

  1. 启动Gogs:
cd gogs
./gogs web
Nach dem Login kopieren

成功启动后,你可以在浏览器中访问http://localhost:3000。

三、配置Nginx反向代理

如果你的Gogs实例位于生产环境,建议使用Nginx作为反向代理服务器。

  1. 安装Nginx:
sudo apt install nginx
Nach dem Login kopieren
  1. 创建一个vhost文件:
sudo nano /etc/nginx/sites-available/gogs
Nach dem Login kopieren

在其中加入以下内容:

server {
    listen 80;

    server_name git.example.com; # your domain name

    access_log /var/log/nginx/git.access.log;
    error_log /var/log/nginx/git.error.log;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $http_host;
    }

    location /ws {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }

    location ~ /\. {
        deny all;
    }
}
Nach dem Login kopieren

请根据自己的需求更改server_name。

  1. 确保Nginx解析该vhost:
sudo ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/
Nach dem Login kopieren

然后重新加载Nginx配置:

sudo nginx -t
sudo systemctl reload nginx
Nach dem Login kopieren

现在你便可以在你的Webbrowser里打开你的网站,通过 GitHub OAuth 登录。

四、总结

以上就是通过Gogs搭建自己的Github账户的方法。相信在实际操作中也会遇到一些细节问题,但大体上操作还是简单易懂的。这些细节问题可以上官方文档或者论坛寻求帮助。自己搭建Github不仅可以实现更灵活的管理,还可以成为学习的过程,具有开发者的工具使得它可作为一个学习性质的项目。

Das obige ist der detaillierte Inhalt vonSo erstellen Sie Ihren eigenen Github über Gogs unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage