Gitea

提供: ArchWiki
2017年2月19日 (日) 15:35時点におけるColajam93 (トーク | 投稿記録)による版 (動機)
ナビゲーションに移動 検索に移動

関連記事

Gitea は Go で書かれた軽量なコードホスティングサーバーである Gogs のコミュニティによるフォークです。MIT ライセンスで配布されています。

インストール

giteaAURgitea-gitAUR パッケージをインストールしてください。

Gitea はデータベースバックエンドを必要とします。以下のデータベースがサポートされています:

MariaDB

ノート: listen アドレスとして /var/run/mysqld/mysqld.sock を使用することで MySQL のソケットを利用することができます。

MariaDB は以下のように設定してください:

$ mysql -u root -p
mysql> CREATE DATABASE `gitea` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
mysql> CREATE USER gitea@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL ON `gitea`.* TO 'gitea'@'localhost';
mysql> \q

新しいユーザーで新しいデータベースへの接続を試行してみてください:

$ mysql -u gitea -p -D gitea

最初の起動時や app.ini を編集して MariaDB を設定します:

/var/lib/gitea/custom/conf/app.ini
DB_TYPE  = mysql
HOST     = /var/run/mysqld/mysqld.sock ; or 127.0.0.1:3306
NAME     = gitea
USER     = gitea
PASSWD   = password

実行

gitea.service起動有効化してください。ウェブインターフェイスは http://localhost:3000 からアクセスできます。

Gitea を最初に起動したときは http://localhost:3000/install にリダイレクトされます。

設定

ユーザー設定ファイルは /var/lib/gitea/custom/conf/app.ini です。メインの設定ファイルである /var/lib/gitea/conf/app.ini を編集してはいけません。このファイルはバイナリに含められるため、アップデートによって上書きされてしまいます。

Gitea のアプリケーションやリポジトリのデータは /var/lib/gitea に保存されます。/var/lib/gitea/custom/conf/app.ini で別の保存場所を指定することもできます。

HTTP プロトコルの無効化

Gitea ではデフォルトで HTTP プロトコルを使ってリポジトリを操作できるようになっています。DISABLE_HTTP_GITfalse に設定することでサポートを無効化できます。

高度な設定

他の設定例は Gogs の FAQ を見てください。

nginx をリバースプロキシとして設定

nginx をリバースプロキシとして OpenSSL を使用する例:

/etc/nginx/servers-available/git
# redirect to ssl
server {
  listen 80;
  server_name git.domain.tld;
  return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl http2;
  server_name git.domain.tld;
  ssl_certificate ssl/cert.crt;
  ssl_certificate_key ssl/cert.key;

  location / {
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass http://localhost:3000;
  }
}

app.iniserver セクションを更新してください:

/var/lib/gitea/custom/conf/app.ini
[server]
PROTOCOL               = http
DOMAIN                 = git.domain.tld
ROOT_URL               = https://git.domain.tld/
HTTP_ADDR              = 0.0.0.0
HTTP_PORT              = 3000
ノート: app.ini で SSL 証明書のオプションを有効にする必要はありません。

参照