概要
KallitheaはGit と Mercurial に対応したオープンソース(GPLv3)のリポジトリホスティングソフトウェアです.
今回はそのKallitheaをubuntu上のvirtualenvに構築していきます.
環境
Software | Version |
---|---|
ESXi | 6.7 |
Ubuntu | 18.04 |
パッケージのアップデート
sudo apt-get -y update
sudo apt-get -y upgrade
インストール
1. パッケージのインストール
sudo apt-get install build-essential git libffi-dev python3-dev python3-venv npm mercurial
2. リポジトリを配置するディレクトリを作成
- 今回は/var/lib配下に作成してきます.
# ディレクトリ作成
sudo mkdir -p /var/lib/kallithea/repos
# 書き込み可能なパーミッションに変更
sudo chmod -R 777 /var/lib/kallithea/repos
3. Kallitheaをクローン
- 今回は/opt配下にクローンしてきます.
# パーミッションの変更
sudo chmod -R 777 /opt
cd /opt
# クローン
hg clone https://kallithea-scm.org/repos/kallithea -u stable
# kallitheaディレクトリに移動
cd kallithea
# パーミッションの変更
sudo chmod -R 777 /opt
4. VirtualenvにKallitheaの仮想マシンを作成
# 仮想マシンを作成
python3 -m venv ../kallithea-venv
# 仮想マシンにログイン
. ../kallithea-venv/bin/activate
5. 各種アップグレードとsetup.pyの実行
※ここから先はvirtualenv上で実施します.
pip install --upgrade pip setuptools
pip install --upgrade -e .
python3 setup.py compile_catalog
6. Kallitheaのセットアップ
- my.iniの作成
kallithea-cli config-create my.ini
- my.iniの編集
sudo nano my.ini
# 下記の部分を編集
## Entry point for 'gearbox serve'
[server:main]
host = <サーバのアドレス>
port = 5000
-
DBのセットアップ
下記コマンドを実行すると古いDatabaseを削除するか,リポジトリを保存するディレクトリ,管理者アカウントのユーザ名,パスワード,メールアドレスを聞かれるので入力する. -
Are you sure to destroy old database ?
-
Enter a valid absolute path to store repositories. All repositories in that path will be added automatically:
-
Specify admin username:
-
Specify admin password (min 6 chars):
-
Specify admin email:
kallithea-cli db-create -c my.ini
#下記が聞かれる
Are you sure to destroy old database ? [y/n]y
Enter a valid absolute path to store repositories. All repositories in that path will be added automatically: /var/lib/kallithea/repos
Specify admin username:<管理者アカウントのユーザ名>
Specify admin password (min 6 chars):<パスワード>
Confirm password:<再度パスワード>
Specify admin email:<メールアドレス>
7. ビルドする
kallithea-cli front-end-build
8. 起動する
# Backgroundで実行する(--daemonを追記)
gearbox serve -c my.ini --daemon
# Virtualenvからログアウト
deactivate
9. Kallitheaにアクセス
下記URLにアクセスしKallitheaにアクセスできることを確認する
http://<サーバのアドレス>:5000
10. 次回以降の起動手順
# kallitheaディレクトリに遷移
cd /opt/kallithea
# Virtualenvにログイン
. ../kallithea-venv/bin/activate
# kallitheaを起動
gearbox serve -c my.ini --daemon
# Virtualenvからログアウト
deactivate
まとめ
今回はKallitheaをubuntu上のvirtualenvに構築した.
Web上のGUIで管理できるため非常に使いやすかった.