Linux

Nginx+uWSGI+viewvcでSubversionのリポジトリをブラウザから閲覧する

ViewVC: Repository Browsingを使ってLinux(CentOS7)上に構築したリポジトリをブラウザから参照可能にしてみます。

これで、Linuxが使えないポンコツな上司から修正内容を問われても、URLをコピペしてメールするだけで済むようになります(?)

Git環境向けはまた今度。

事前準備

必要なパッケージを先にインストールしておきます。

参照するリポジトリ

今回のテスト用に/opt/svn/reposを作ります。

コミットログも見れるか確認するため作成したリポジトリに適当なファイルを追加します。

Nginxのインストール

Nginxをyumでインストールするため、リポジトリにnginxのパッケージ取得先を追記します。

以下のコマンドでインストールできればOK

続いて、nginxのコンフィグです。

/viewvcでアクセスした場合にuWSGIに処理させるようにします。
/viewvc-staticはviewvcのロゴ等の画像ファイルを参照するための記述です。

このままではファイアウォールとSELinuxに接続が弾かれるので予めポートの開放とSELinuxを無効化しておきます。

ファイアウォールの設定

SELinuxの無効化

設定が終ったらnginxを起動します。

uWSGIのインストール

公式の方法はこちら

今回、uWSGIはpipでインストールするので、まずはpipを使えるようにします。

pipが準備できたらuwsgiを追加します。

追加できたら、systemctlで起動できるように下記ファイルを作ります。

/etc/uwsgi/uwsgi.ini

設定が終ったら起動します。

Viewvcのインストール

こちらから最新版を取ってきます。

ViewVCのパスとコンフィグをNginx、uWSGIに記載した内容に合わせます。
所有者もnginxに変更します。

結果

ブラウザにURLを入力してリポジトリの内容が参照できたら成功です。

今回の例では、”http://(サーバーのIPアドレス)/viewvc “にアクセスします。

f:id:segmentation-fault:20180923212800p:plain

参考

ViewVC: Repository Browsing

https://pip.pypa.io/en/stable/

https://uwsgi-docs.readthedocs.io/en/latest/index.html

https://nginx.org/

https://subversion.apache.org/