ホームページ >開発ツール >Git >Linux で Gogs を使用して独自の Github を構築する方法

Linux で Gogs を使用して独自の Github を構築する方法

PHPz
PHPzオリジナル
2023-03-31 14:02:09965ブラウズ

Github が徐々に普及するにつれて、ますます多くの人が Github で独自のプロジェクトを構築すること、つまり、Github で独自のコードを公開することを選択するでしょう。ただし、Github では 1 つのアカウントで作成できるプライベート リポジトリの数が制限されているため、一部の高頻度ユーザーは独自のコード リポジトリを構築する別の方法を見つける必要がある場合があります。この時点で、Github を自分で構築することがオプションになりました。この記事では主に、Linux システムで Gogs を使用して独自の Github を構築し、Github アカウントの制限を解除する方法を紹介します。

1. インストール環境

構築を開始する前に、システムに対応する環境がインストールされていることを確認する必要があります:

  1. MySQLまたは PostgreSQL
  2. Go >= 1.12.x
  3. Git >= 1.7.1 (2.x 推奨)

Ubuntu システムの場合は、MySQL をインストールできます。次のコマンドを使用します。

sudo apt-get update
sudo apt-get install mysql-server

Go をインストールするには、公式 Web サイトから対応するインストール パッケージをダウンロードし、指示に従ってください。

Ubuntu または Debian システムの一部のバージョンでは、git-core がインストールされていない可能性があるため、インストールする必要があります:

sudo apt-get update
sudo apt-get install git-core

2. Gogs をインストールします

    ##Gogs の最新バージョンを Github からダウンロードし、次のディレクトリに解凍します:
  1. wget https://dl.gogs.io/gogs_latest_linux_amd64.tar.gz
    tar xvfz gogs_latest_linux_amd64.tar.gz
    ダウンロードした Gogs ディレクトリに入り、インストールを実行します:
  1. cd gogs
    ./gogs install
インストールを実行するときは、次のコンテンツを入力する必要があります:

Do you want to install as Windows service/daemon? (y/n)
n
Please enter the URL: (e.g. http://domain.com[:port] or http://[IP]:[port])
http://localhost:3000
次のインストール手順では、データベース関連のコンテンツを入力する必要があります。これは、独自のニーズに応じて構成する必要があります。このステップでは、データベースとして MySQL を使用し、2 番目のサーバーをインストールすることをお勧めします。

Git 情報を入力する必要がある場合は、GitHub に使用する ssh キーを追加することに注意する必要があります。

    Gogs の起動:
  1. cd gogs
    ./gogs web
起動に成功したら、ブラウザで http://localhost:3000 にアクセスできます。

3. Nginx リバース プロキシの構成

Gogs インスタンスが実稼働環境にある場合は、Nginx をリバース プロキシ サーバーとして使用することをお勧めします。

    Nginx のインストール:
  1. sudo apt install nginx
    vhost ファイルを作成:
  1. sudo nano /etc/nginx/sites-available/gogs
次のコンテンツをそれに追加します:

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;
    }
}
server_name は必要に応じて変更してください。

    Nginx が vhost を解決していることを確認します:
  1. sudo ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/
次に、Nginx 構成をリロードします:

sudo nginx -t
sudo systemctl reload nginx
これで、Web ブラウザ Web サイトを開いて、ログインできるようになります。 GitHub OAuth。

4. 概要

上記は、Gogs を通じて独自の Github アカウントを設定する方法です。実際の操作では細かい部分に遭遇すると思いますが、全体的にはシンプルでわかりやすい操作です。これらの詳細な質問については、公式ドキュメントまたはフォーラムにアクセスしてヘルプを得ることができます。 Github を自分で構築すると、より柔軟な管理が実現できるだけでなく、開発者ツールを使用することで学習プロジェクトにもなります。

以上がLinux で Gogs を使用して独自の Github を構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。