「Gogs」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (カテゴリを削除) |
(→インストール: 同期) |
||
15行目: | 15行目: | ||
== インストール == |
== インストール == |
||
− | + | Gogs パッケージ (開発バージョンの場合は {{AUR|gogs}} または {{AUR|gogs-git}}) を [[インストール]] する前に、Gogs をホストする予定がある場合は、データベースバックエンドを選択する必要があります。: |
|
− | |||
− | [[AUR]] から Gogs のパッケージをインストールする前に、Gogs と同じマシンにデータベースを作る場合、データベースバックエンドを選んでください: |
||
* SQLite: {{Pkg|sqlite}} - Gogs で SQLite を使用する方法は [[#SQLite]] を見てください。 |
* SQLite: {{Pkg|sqlite}} - Gogs で SQLite を使用する方法は [[#SQLite]] を見てください。 |
||
* PostgreSQL: {{Pkg|postgresql}} - [[PostgreSQL#PostgreSQL のインストール]]を読んでセットアップして[[デーモン]]を起動してください。Gogs で PostgreSQL を使用する方法は [[#PostgreSQL]] を見てください。 |
* PostgreSQL: {{Pkg|postgresql}} - [[PostgreSQL#PostgreSQL のインストール]]を読んでセットアップして[[デーモン]]を起動してください。Gogs で PostgreSQL を使用する方法は [[#PostgreSQL]] を見てください。 |
||
* MariaDB: {{Pkg|mariadb}} - [[MariaDB#インストール]]を読んでセットアップして[[デーモン]]を起動してください。Gogs で MariaDB を使用する方法は [[#MariaDB]] を見てください。 |
* MariaDB: {{Pkg|mariadb}} - [[MariaDB#インストール]]を読んでセットアップして[[デーモン]]を起動してください。Gogs で MariaDB を使用する方法は [[#MariaDB]] を見てください。 |
||
+ | |||
+ | 各パッケージには、サービスのバックエンド/ストレージを構成するための複数のオプションが用意されています。[[#設定]] を参照してください。 |
||
SSH を使ってリポジトリを操作できるようにする場合、{{ic|/etc/ssh/sshd_config}} の {{ic|AllowUsers}} エントリに {{ic|gogs}} ユーザーを追加してください。 |
SSH を使ってリポジトリを操作できるようにする場合、{{ic|/etc/ssh/sshd_config}} の {{ic|AllowUsers}} エントリに {{ic|gogs}} ユーザーを追加してください。 |
2024年3月15日 (金) 13:01時点における版
関連記事
Gogs (Go Git Service) はセルフホスティング Git サービスです。Go プログラミング言語で書かれています。
目次
パッケージ
上記のパッケージでは sqlite, redis, memcache が有効になります。使用するには、app.ini
設定ファイルを編集する必要があります (#設定を参照)。
インストール
Gogs パッケージ (開発バージョンの場合は gogsAUR または gogs-gitAUR) を インストール する前に、Gogs をホストする予定がある場合は、データベースバックエンドを選択する必要があります。:
- SQLite: sqlite - Gogs で SQLite を使用する方法は #SQLite を見てください。
- PostgreSQL: postgresql - PostgreSQL#PostgreSQL のインストールを読んでセットアップしてデーモンを起動してください。Gogs で PostgreSQL を使用する方法は #PostgreSQL を見てください。
- MariaDB: mariadb - MariaDB#インストールを読んでセットアップしてデーモンを起動してください。Gogs で MariaDB を使用する方法は #MariaDB を見てください。
各パッケージには、サービスのバックエンド/ストレージを構成するための複数のオプションが用意されています。#設定 を参照してください。
SSH を使ってリポジトリを操作できるようにする場合、/etc/ssh/sshd_config
の AllowUsers
エントリに gogs
ユーザーを追加してください。
初期設定
gogs.service
を起動したら、http://[server]:3000
からサービスにアクセスできるようになります。初めてアクセスしたときは、インストールページに転送されます。インストールページでは様々な設定オプションを設定できます。他の設定は /srv/gogs/conf/app.ini
設定ファイルで変更できます (ポート番号など)。
設定
最初の起動時、Gogs は設定ファイルを /srv/gogs/conf
ディレクトリに作成します。
.gitignore と license ファイル
/srv/gogs/conf/gitignore
または /srv/gogs/conf/license
ディレクトリにファイルを追加してください。ディレクトリが存在しない場合、最初に作成する必要があります。
.gitignore ファイルは こちらのページ から取得・作成できます。
データベース
SQLite
sqlite をインストールしてインストールページで SQLite を選択してください。
PostgreSQL
postgresql をインストールしてインストールページで PostgreSQL を選択してください。
# su - postgres -c # createuser -P gogs # createdb -O gogs gogs
MariaDB
mariadb をインストールしてユーザーとデータベースを設定してください:
# CREATE DATABASE `ishouldchangethisdatabasename` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`; # CREATE USER 'ishouldchangethisusername'@'localhost' IDENTIFIED BY 'ishouldchangethispassword'; # GRANT ALL ON `ishouldchangethisdatabasename`.* TO 'ishouldchangethisusername'@'localhost';
インストールページでは mysql を選択して、設定したユーザーとパスワード、データベース名を入力してください。
ヒントとテクニック
テーマ
最新パッケージ (gogs-git* と gogs>=0.4.2) ではカスタムテーマに対応しています。Gogs のテーマを保存するディレクトリは /usr/share/themes/gogs/
です。Gogs にはデフォルトテーマが付属していますが、簡単にテーマを作成することができます。デフォルトの theme
ディレクトリをコピーして自由に変更してください。public
ディレクトリには javascript やスタイルシート、フォントファイルを保存し template
ディレクトリには HTML テンプレートを保存します。app.ini
の設定パラメータ STATIC_ROOT_PATH
を変更することでテーマを選ぶことができます。新しいテーマの絶対パスに変更してください。
アップグレード後に再起動
Gogs はアップグレード後に再起動を必要とします。javascript や css アセットのパスが変更されウェブサイトが表示できなくなるためです。以下の pacman フックを /etc/pacman.d/hooks/gogs.hook
として作成することで再起動を自動化できます:
[Trigger] Type = File Operation = Upgrade Target = usr/share/gogs/gogs [Action] Description = Restart gogs... When = PostTransaction Exec = /usr/bin/systemctl try-restart gogs.service
SSH ポート
SSH サーバーのポートをデフォルトから変更している場合、クローン URL が醜くなります。ポート 22 を使用して gogs で独自の SSH サーバーを起動させることができます。
gogs バイナリから特権ポートの使用を許可:
# setcap CAP_NET_BIND_SERVICE=+eip /usr/share/gogs/gogs
/srv/gogs/conf/app.ini
で gogs の SSH サーバーを設定:
START_SSH_SERVER = true SSH_PORT = 22 SSH_LISTEN_PORT = 22