開発者ドキュメント

Ubuntu14.04にNginxでMoinMoinをインストールする方法

序章

MoinMoinは、Pythonで記述された高性能のオープンソースWikiエンジンです。 これは、ユーザーの大規模なコミュニティがあり、非常にカスタマイズ可能で使いやすい機能豊富なWikiを提供します。 MoinMoinは、Ubuntu、Apache、FreeBSDなどの公開Wikiのためにいくつかの組織で使用されています。

このチュートリアルでは、WebサーバーとしてNginxを使用し、アプリケーションエンジンとしてuWSGIを使用して、新しいUbuntu14.04サーバーで独自のMoinMoinwikiをセットアップする方法を示します。 この特定のセットアップは単一のWiki用であり、非常に高速でメモリ効率が高くなっています。

前提条件

このガイドを開始する前に、サーバーにroot以外のユーザーアカウントを設定しておく必要があります。 これを行う方法を学ぶには、Ubuntu 14.04初期サーバーセットアップの手順1〜4を完了します。

このガイドは、新しいUbuntu14.04サーバーがあることを前提としています。

このチュートリアルでは、viを使用してファイルを開いて編集します。 別のエディターをご希望の場合は、viの代わりに使用してください。

始めましょう!

uWSGIをインストールします

まず、アプリケーションサーバーとして使用するuWSGIをインストールしましょう。

まず、次のコマンドでAptデータベースを更新します。

sudo apt-get update

uWSGIをインストールする簡単な方法は、Pythonパッケージマネージャーpipを使用することです。 今すぐPython-pipとPythonライブラリをインストールします。

sudo apt-get install python-pip python-dev

pipをインストールすると、次のコマンドでuWSGIの最新の安定したリリースをインストールできます。

sudo pip install http://projects.unbit.it/downloads/uwsgi-lts.tar.gz

uWSGIが正常にインストールされると、次のようなメッセージが表示されます。

    ############## end of uWSGI configuration #############
    total build time: 36 seconds
    *** uWSGI is ready, launch it with /usr/local/bin/uwsgi ***

Successfully installed uWSGI
Cleaning up...

uWSGIアプリケーションサーバーがインストールされたので、MoinMoinをダウンロードしてインストールする準備が整いました。

Moinmoinをインストールする

MoinMoinをインストールする前に、ここでインストールするバージョンを検索してください:MoinMoinリリース。 おそらく最新の一般リリースを使用することをお勧めします。

MoinMoinの最新の一般リリースを見つけて、そのURLをクリップボードにコピーします。

このチュートリアルが作成されたときに利用可能な最新の一般リリースは1.9.8であったため、URLの例は1.9.8バージョンを参照しています。 このwgetコマンドを使用して、MoinMoinアーカイブをホームディレクトリにダウンロードします(コピーしたダウンロードURLに置き換えます)。

cd ~
wget http://static.moinmo.in/files/moin-1.9.8.tar.gz

次に、tarを使用してアーカイブを抽出します。

tar zxvf moin-1.9.8.tar.gz

MoinMoinアーカイブを抽出して作成したディレクトリに移動します。

cd moin-*

MoinMoinPythonアプリケーションをビルドして/usr/localにコピーするには、次のコマンドを実行します。

sudo python setup.py install --prefix=/usr/local

Python 2.7を使用しているとすると、PythonスクリプトはMoinMoinコードパッケージを/usr/local/lib/python2.7/dist-packages/にインストールし、残りのMoinMoinデータを/usr/local/share/moinにインストールします。

これでMoinMoinPythonアプリケーションがインストールされましたが、まだ構成されていません。 それを設定しましょう。

MoinMoinアプリケーションを構成する

MoinMoinアプリケーションを実際に起動する前に、その構成ファイルを準備する必要があります。

インストールディレクトリに移動します。

cd /usr/local/share/moin

次に、サンプルサーバー構成ファイルmoin.wsgiを現在のディレクトリにコピーします。

sudo cp server/moin.wsgi .

編集のためにサーバー構成ファイルを開きます。

sudo vi moin.wsgi

import sys, os行の下に、次の行を挿入します。

sys.path.insert(0, '/usr/local/lib/python2.7/dist-packages/')
sys.path.insert(0, '/usr/local/share/moin/')

保存して終了。 これにより、MoinMoinコードの場所と、Wiki構成ファイルが配置される場所を使用してアプリケーションが構成されます。

次に、uwsgi.iniを作成して開きます。

sudo vi uwsgi.ini

次の行をファイルに挿入します。

[uwsgi]
uid = www-data
gid = www-data
socket = /usr/local/share/moin/moin.sock
chmod-socket = 660
logto = /var/log/uwsgi/uwsgi.log

chdir = /usr/local/share/moin/
wsgi-file = moin.wsgi

master
workers = 3
max-requests = 200
harakiri = 30
die-on-term

保存して終了。 uwsgi.iniファイルは、MoinMoinアプリケーションをuWSGIアプリケーションサーバーにロードするために使用されます。 ここでは、アプリケーションが使用する必要のあるユーザー、ソケット、サーバーの構成ファイルとログファイルなどを指定しています。 ワーカー数、最大リクエスト数、または許容可能なセッション期間(ハラキリ)を自由に調整してください。

次に、/var/log/uwsgiディレクトリを作成します。このディレクトリに、ログを書き込むようにuWSGIアプリケーションを構成しました。

sudo mkdir -p /var/log/uwsgi
sudo chown www-data /var/log/uwsgi

次に、MoinMoinアプリケーションを起動するために使用されるinitctlスクリプトを作成しましょう。 このスクリプトは、サーバーの起動時にMoinMoinを有効にし、start moinおよびstop moinを使用してuWSGIアプリケーションを制御できるようにします。

次のコマンドを使用して、moin.confを作成して開きます。

sudo vi /etc/init/moin.conf

次の構成行を挿入します。

description "moin uwsgi service"

start on runlevel [2345]
stop on runlevel [!2345]

chdir /usr/local/share/moin
exec /usr/local/bin/uwsgi /usr/local/share/moin/uwsgi.ini
respawn

保存して終了。 chdirおよびexec行のパスは、MoinMoinがインストールされた場所、およびuwsgiバイナリとuwsgi.iniファイルが存在する場所を正確に反映していることが重要です。

ここでアプリケーションサーバーを起動できますが(sudo start moin)、最初にWiki構成にいくつかの変更を加えます。

Wikiを構成する

uWSGIアプリケーションサーバーの準備ができたので、実際のWikiを構成します。

MoinMoinインストールディレクトリに移動し、サンプルのwikiconfig.pyファイルをコピーします。

cd /usr/local/share/moin
sudo cp config/wikiconfig.py .

次に、ファイルを開いて編集します。

sudo vi wikiconfig.py

ここでは、Wikiのさまざまな側面を構成できます。 少なくとも、次の項目を構成する必要があります。

次の行を見つけ(#を削除して、必要に応じてコメントを解除します)、強調表示された値を好みに合わせて変更します。

    sitename = u'My First Wiki'

    page_front_page = u"FrontPage"

    superuser = [u"WikiAdmin", ]

保存して終了。 これはPythonファイルであるため、既存のインデントを必ず保持してください。

アプリケーションを起動する前に、MoinMoinディレクトリの所有権と権限を変更しましょう。

sudo chown -R www-data: /usr/local/share/moin
sudo chmod -R o-rwx /usr/local/share/moin

次のコマンドでuWSGIアプリケーションサーバーを起動します。

sudo start moin

MoinMoinは現在実行中ですが、使用する前に、WebサーバーであるconfigureNginxをインストールする必要があります。

Nginxをインストールして構成する

WebサーバーとしてNginxを使用するので、今すぐインストールして構成しましょう。

aptを使用してNginxをインストールします。

sudo apt-get install nginx

次に、sites-availableディレクトリに移動し、Wiki用の新しいサーバーブロック構成ファイルを作成します。 私たちは私たちをmoinと呼びます:

cd /etc/nginx/sites-available
sudo vi moin

ファイルに次の行を挿入します(強調表示された部分を独自の情報に置き換えます)。

server {
    server_name wiki.example.com;

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

    location / {
        include uwsgi_params;
        uwsgi_pass unix:///usr/local/share/moin/moin.sock;
        uwsgi_modifier1 30;
    }
}

これは必要最低限のNginx構成です。 サーバーに適していると思われる変更を自由に行ってください。

次に、sites-enabledディレクトリに新しいサーバーブロック構成ファイルへのシンボリックリンクを作成しましょう。

cd /etc/nginx/sites-enabled
sudo ln -s ../sites-available/moin .

そして、defaultサーバーブロックへのシンボリックリンクを削除します。

sudo rm default

これで、moinサーバーブロックがデフォルトになります。

Nginxを再起動して、新しい設定を読み込みます。

sudo service nginx restart

新しいWikiが稼働しています! サーバーのIPアドレスまたはホスト名で利用できます。

Wikiスーパーユーザーを作成する

Wikiを使用する前に最後に行うことは、スーパーユーザーアカウントを作成することです。 このアカウントには、ブログに対する管理者権限があります。 このユーザーの名前は、このチュートリアルの Wikiの構成セクションのwikiconfig.pyファイルのsuperuserフィールドで構成したため、必ず同じ名前を使用してください。ここ。

IPアドレスまたはホスト名を介してWebブラウザでサーバーに接続します:http://wiki.example.com

次のフロントページが表示されます。

ページ上部のログインリンクをクリックしてください。

ログインページで、今すぐ作成できるリンクをクリックします。

[アカウントの作成]ページで、スーパーユーザーの構成に一致する名前(例では「WikiAdmin」を使用)とパスワードおよび電子メールアドレスを入力し、プロファイルの作成ボタンをクリックします。

すべてがうまくいけば、次の成功メッセージが表示されます。

それでおしまい! これで、Wikiを使用する準備が整いました。

結論

MoinMoin wikiが起動して実行されたので、コラボレーションに使用する準備が整いました。 コンテンツやユーザーを自由に追加したり、構成やテーマを変更したりしてください。

モバイルバージョンを終了