Raspberry Pi に Gitea をインストールして独自のコード リポジトリを作成する

Raspberry Pi に Gitea をインストールして独自のコード リポジトリを作成する
あなたのような読者が MUO のサポートを支援します。当サイトのリンクを使用して購入すると、アフィリエイト手数料が発生する場合があります。 続きを読む。

Git は、ソフトウェア開発者、コーダー、いじり屋がオープン ソース プロジェクトの共同作業や配布に使用するバージョン管理システムです。 Git を使用すると、任意のサイズのプロジェクトを処理し、コードの変更とマージを取り込み、ユーザーがリポジトリを自分のマシンに複製できるようにすることができます。オープン ソース エコシステムは Git 上で動作し、MakeUseOf.com で紹介されているプロジェクトの多くは GitHub のリソースを使用しています。 Gitea を使用すると、自宅の Raspberry Pi で完全に機能する独自の Git リポジトリをホストできます。





今日のメイク動画

GitHub を使用する代わりに、Raspberry Pi で独自の Git サービスをホストする理由

  React からのファイルのリストを表示する GitHub リポジトリ ページ's source code

5,500 万人のユーザーを抱え、 GitHub は、無料のオープン ソース ソフトウェアの最大のリポジトリです。 しかし、その現在の所有者である Microsoft は、管理者の役割にふさわしくありません。同社の以前の CEO は、Linux と General Public License を「癌」と表現しており、Microsoft 自身の製品のほとんどは独占的でクローズド ソースです。





Microsoft の所有権により、GitHub はいくつかの倫理的に疑わしいテクノロジを調査しています。特に、プログラマがコードを生成するのを支援する AI ツールである GitHub Copilot を使用しています。 Copilot は GitHub からのデータでトレーニングされており、コーダーが採用しているクリエイティブ コモンズ ライセンスの条件に違反している可能性があります。





開発者は GitHub を使用することで、イノベーションが抑制され、弱体化され、軽薄な干渉を受ける可能性があるさらに別のチョーク ポイントを作成しています。

MacをRokuに接続する方法

Gitea を使用すると、Raspberry Pi に独自の Git サーバーをセットアップできます

Gitea は Gogs のフォークであり、Go で記述され、MIT ライセンスの下で公開されているコミュニティ管理の軽量コード ホスティング ソリューションです。これは、前任者よりもオープンで高速な開発モデルを目指しており、Raspberry Pi などの適度なリソースを備えたマシンでも実行できます。ドットファイルで作業できるようになります。 カスタム Ubuntu ISO 、Bash スクリプト、Java および Python ユーティリティは、DMCA による削除の対象となったり、悪質なソフトウェアのトレーニングに使用されたり、その他の方法で制御できなくなったりすることを恐れずに使用できます。



Raspberry Pi に Gitea をインストールする方法

Gitea にはいくつかのインストール方法がありますが、最も簡単なのは Docker を使用する方法です。これらを Raspberry Pi でまだ実行していない場合は、 Docker と Docker Compose をインストールする 今。

Gitea サーバーに保存するファイルは、多くのスペースを占有する可能性があるため、お勧めします。 Raspberry Pi で外部ストレージを使用する 、そしてそれを Gitea インストールの場所として使用します。





SSH経由でPiに接続する をクリックし、Gitea をインストールする場所に移動し、新しいディレクトリを作成してそこに移動します。

 mkdir gitea 
cd gitea

nano で新しいファイルを作成します。





 nano docker-compose.yml

...次のコードを貼り付けます。

 version: "3" 

networks:
  gitea:
    external: false

services:
  server:
    image: gitea/gitea:latest
    container_name: gitea
    environment:
      - USER_UID=1000
      - USER_GID=1000
      - GITEA__database__DB_TYPE=mysql
      - GITEA__database__HOST=db:3306
      - GITEA__database__NAME=gitea
      - GITEA__database__USER=gitea
      - GITEA__database__PASSWD=gitea
    restart: always
    networks:
      - gitea
    volumes:
      - ./gitea:/data
      - /etc/timezone:/etc/timezone:gb
      - /etc/localtime:/etc/localtime:gb
    ports:
      - "3000:3000"
      - "222:22"
    depends_on:
      - db

  db:
    image: mysql:8
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks:
      - gitea
    volumes:
      - ./mysql:/var/lib/mysql

タイムゾーンを自分のロケールに変更し、データベースの強力なパスワードを選択してから、nano を保存して終了します Ctrl + O 、 それから Ctrl + X.

入る:

 docker-compose up -d 

…分離モードで docker-compose を立ち上げます。 Docker-compose は Gitea と Maria DB の複数のイメージをプルし、コンテナーをセットアップします。接続速度によっては、時間がかかる場合があります。

  docker-compose ps で gitea と gitea_db_1 が起動していることを示す

コマンド プロンプトに戻ったら、次の操作を行います。

 docker-compose ps

…「gitea」と「gitea_db_1」が「up」と表示されるはずです。 Gitea サイトの初期設定ページにアクセスできるようになりました。 your.pi.local.ip.address:3000 .

まだ何も変更しないでください。インターネット経由で Gitea インスタンスにアクセスすることを計画している場合は、最初にもう少し準備をする必要があります。

インターネット経由で Gitea インスタンスにアクセスする

標準の URL を入力して Gitea インスタンスにアクセスできるようにしたいので、プロキシを処理するために Apache が必要になります。次を使用してApacheをインストールします。

 sudo apt install apache2

次に、次のコマンドで Apache を起動して有効にします。

 sudo systemctl start apache2 
sudo systemctl enable apache2

以下を使用して、Apache のプロキシ モジュールを有効にします。

 sudo a2enmod proxy 
sudo a2enmod proxy_http

ドメイン名またはサブドメイン名を選択してください 有名なレジストラから。次に、レジストラの設定ページから、[高度な DNS] オプションを見つけて、新しい 記録。をセットする ホスト フィールドに ' @' 値フィールドを静的 IP アドレスに設定します。 TTL (Time to Lease) 値をできるだけ低く設定してから、保存します。

ルーターの管理ページを開き、次のいずれかのセクションを見つけます。 ポート転送 ポート マッピング 、 また ポート管理。

HTTP 要求の新しいエントリを作成します。ローカル ポートとパブリック ポートの両方を 80 、ローカル IP アドレスを Raspberry Pi の IP アドレスに置き換えます。

HTTPS 要求には、2 つ目の開いているポートが必要です。ローカル ポートとパブリック ポートの両方を 443 、そして再び、ローカル IP アドレスを Pi の IP アドレスに変換します。

最後に、Git サーバーへの SSH リクエスト用に開いているポートが必要です。ローカル ポートとパブリック ポートの両方を 222 、およびローカル IP アドレスを Pi の IP アドレスに変換します。

Certbot を使用して、セキュリティ証明書とキーを取得します。 Certbot リポジトリを追加し、更新してから、Certbot をインストールします。

 sudo add-apt-repository ppa:certbot/certbot 
sudo apt update
sudo apt-get install python3-certbot-apache

ディレクトリを変更し、nano で新しいファイルを作成します。

 cd /etc/apache2/sites-available/ 
nano gitea.conf

新しいファイルに次を貼り付けます。独自のドメイン名をコピーしてください。

 <VirtualHost *:80>ServerName your-domain-name.tldProxyPass / http://127.0.0.1:3000/ProxyPassReverse / http:/127.0.0.1:3000/ProxyPreserveHost On</VirtualHost>

nanoを保存して終了します コントロール + 、 それから コントロール + バツ で、新しい conf ファイルを次のように有効にします。

iPhoneで会話を録音する方法
 sudo a2ensite gitea.conf

アパッチを再起動します。

 sudo service apache2 restart

以下を使用して Certbot を実行します。

 sudo certbot

…リストからドメイン名を選択します。 Certbot は、証明書とキーを取得してインストールします。プロンプトに戻ったら、Apache を再起動します。

 sudo service apache2 restart

Gitea インスタンスのセットアップ

アドレスで、ブラウザーで Gitea インスタンスにアクセスできるようになりました。 https://your-domain-name.tld .最初のセクションで、データベースの種類、パスワード、およびその他の変数を設定できます。これらは docker-compose ファイルで指定した値になり、既に入力されているはずなので、変更する必要はありません。

一般設定 、 をセットする ウェブサイト名 適切なものに、 サーバー ドメイン あなたのドメイン名である必要があります SSH サーバー ポート に設定する必要があります 222 .ベース URL は、「HTTPS://」を含むドメイン名にする必要があります。

終わったら、大きな青を打ってください Giteaをインストールする ボタン。大きな緑色のお茶と、インスタンスに付けた名前とナメクジが迎えてくれます。最初のユーザーを作成するには、ページの右上にある [登録] をクリックし、詳細を入力します。おめでとう!

Git サーバーで他のユーザーが自分のリポジトリを登録してホストするのを防ぐには、次のように編集する必要があります。 app.ini ファイル。最初に ガイド のディレクトリ / (ルート) ディレクトリで、次のように入力します。

 nano /gitea/gitea/gitea/conf/app.ini

サービスセクションまでスクロールして設定します DISABLE_REGISTRATION 真に。

  gitea diable 登録を true に設定

nanoを保存して終了します コントロール + 、 それから コントロール + バツ、 次にコンテナを再起動します。

 docker-compose downdocker-compose up -d

ギテアの使用

GitHub を使用したことがある場合は、すぐに Gitea に慣れることができます。ログインすると、利用可能なリポジトリがないことがわかります。をクリックして作成します。 + ページの右側に署名し、適切な名前を付けます。

  gitea 初期リポジトリ作成

ボックスをオンにしてリポジトリを非公開にするか、公開したままにしておくかを選択できます。 readme ファイルで初期化するボックスにチェックを入れ、 リポジトリの作成 最初のリポジトリを作成します! GitHub と同じように、変更を加えてコミットし、ファイルをアップロードし、編集することができます。

YouTubeで誰かにメッセージを送ることができますか

クリック SSH アドレスをコピーすると、リポジトリをローカル マシンにクローンできなくなり、代わりに「正しいアクセス権があり、リポジトリが存在することを確認してください」というエラーが表示されます。まず、ローカル マシンの SSH キーを Gitea に追加する必要があります。これを行うには、次の出力をコピーします。

 cat ~/.ssh/id_rsa.pub

Gitea ウェブ インターフェースで、プロフィール写真をクリックし、 設定 > SSH/GPG キー .クリック キーを追加 をクリックし、コピーしたばかりのキーを貼り付けます。

  sshキーをgiteaに追加

独自の Raspberry Pi 上の独自の Git サーバーで、独自の Git リポジトリを操作できるようになりました!

Gitea インスタンスを使用して素晴らしいソフトウェア プロジェクトを作成する

Git は素晴らしいプロジェクトで共同作業を行うための素晴らしいツールですが、チームがなくても、独自のワークフローを編成し、素晴らしいソフトウェアや構成を作成するには素晴らしいツールです。新しいプログラミング言語を学習したり、デスクトップ システムを最適な状態にカスタマイズしたりする際に、ファイルを追跡するのに役立ちます。