序章
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
:Wikiのタイトルpage_front_page
:この行のコメントを解除して、通常のフロントページを有効にしますsuperuser
: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が起動して実行されたので、コラボレーションに使用する準備が整いました。 コンテンツやユーザーを自由に追加したり、構成やテーマを変更したりしてください。