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

So erstellen Sie Ihren eigenen Github über Gogs unter Linux

Mar 31, 2023 pm 02:02 PM

随着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!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Git vs. GitHub: Versionskontrolle und Code -Hosting Git vs. GitHub: Versionskontrolle und Code -Hosting Apr 11, 2025 am 11:33 AM

Git ist ein Versionskontrollsystem, und GitHub ist eine GIT-basierte Code-Hosting-Plattform. Git wird verwendet, um Codeversionen zu verwalten und unterstützt lokale Operationen. GitHub bietet Online -Zusammenarbeitstools wie das Problem mit der Ausgabe und PullRequest.

Ist Git das gleiche wie GitHub? Ist Git das gleiche wie GitHub? Apr 08, 2025 am 12:13 AM

Git und Github sind nicht dasselbe. Git ist ein Versionskontrollsystem, und GitHub ist eine GIT-basierte Code-Hosting-Plattform. Git wird verwendet, um Codeversionen zu verwalten, und GitHub bietet eine Online -Zusammenarbeit.

Ist Github schwer zu lernen? Ist Github schwer zu lernen? Apr 02, 2025 pm 02:45 PM

Github ist nicht schwer zu lernen. 1) Meister Sie das Grundwissen: GitHub ist ein GIT-basiertes Versionskontrollsystem, mit dem Code Änderungen und kollaborative Entwicklung nachverfolgt werden. 2) Kernfunktionen verstehen: Versionskontrolle zeichnet jede Einreichung, die Unterstützung lokaler Arbeiten und Remote -Synchronisation auf. 3) Lernen Sie, wie Sie verwendet werden: vom Erstellen eines Repositorys bis hin zum Drücken von Commits bis hin zur Verwendung von Zweigen und Ziehenanforderungen. 4) Lösen Sie gemeinsame Probleme: wie Zusammenführungskonflikte und Vergessen, Dateien hinzuzufügen. 5) Optimierungspraxis: Verwenden Sie aussagekräftige Einreichungsnachrichten, Reinigen Sie Niederlassungen und Verwalten Sie Aufgaben mithilfe der Projektplatine. Durch Praxis und Community -Kommunikation ist Githubs Lernkurve nicht steil.

Soll ich Git oder Github in meinen Lebenslauf setzen? Soll ich Git oder Github in meinen Lebenslauf setzen? Apr 04, 2025 am 12:04 AM

In Ihrem Lebenslauf sollten Sie sich dafür entscheiden, Git oder GitHub basierend auf Ihren Positionsanforderungen und persönlichen Erfahrungen zu schreiben. 1. Wenn die Position GIT -Fähigkeiten erfordert, markieren Sie Git. 2. Wenn die Position der Positionsbeteiligung bewertet, zeigen Sie GitHub. 3. Beschreiben Sie die Nutzungserfahrung und die Projektfälle im Detail und beenden Sie einen vollständigen Satz.

Besitzt Microsoft Git oder GitHub? Besitzt Microsoft Git oder GitHub? Apr 05, 2025 am 12:20 AM

Microsoft besitzt keinen Git, sondern besitzt GitHub. 1.Git ist ein verteiltes Versionskontrollsystem, das 2005 von Linus Torvaz erstellt wurde. 2. GitHub ist eine Online -Code -Hosting -Plattform, die auf Git basiert. Es wurde 2008 gegründet und 2018 von Microsoft übernommen.

Soll ich mit Git oder GitHub beginnen? Soll ich mit Git oder GitHub beginnen? Apr 06, 2025 am 12:09 AM

Ausgehend von Git eignet sich besser für ein tiefes Verständnis der Prinzipien der Versionskontrolle. Ausgehend von GitHub eignet sich besser für die Konzentration auf Zusammenarbeit und Code -Hosting. 1.Git ist ein verteiltes Versionskontrollsystem, mit dem die Code -Versionsverlauf verwaltet wird. 2. GitHub ist eine Online -Plattform, die auf Git basiert und die Funktionen für Code -Hosting und Kollaboration bietet.

Was ist Git in einfachen Worten? Was ist Git in einfachen Worten? Apr 09, 2025 am 12:12 AM

Git ist ein Open -Source -Distributed -Versionskontrollsystem, mit dem Entwickler die Änderungen der Dateien verfolgen, zusammenarbeiten und Codeversionen verwalten können. Zu den Kernfunktionen gehören: 1) Modifikationen auf Datensätze, 2) Fallback in frühere Versionen, 3) kollaborative Entwicklung und 4) Niederlassungen für parallele Entwicklung erstellen und verwalten.

Wie benutze ich GitHub für HTML? Wie benutze ich GitHub für HTML? Apr 07, 2025 am 12:13 AM

Der Grund für die Verwendung von GitHub zur Verwaltung von HTML -Projekten ist, dass es eine Plattform für die Versionskontrolle, die kollaborative Entwicklung und die Präsentation von Werken bietet. Zu den spezifischen Schritten gehören: 1. Erstellen und initialisieren Sie das Git -Repository, 2. HTML -Dateien hinzufügen und senden. Darüber hinaus unterstützt GitHub auch Funktionen für die Code -Überprüfung, Ausgabe und PullRequest, um HTML -Projekte zu optimieren und zusammenzuarbeiten.

See all articles