7.2. サーバ実行
7.2.1. テストサーバ起動
テストサーバを起動するには次のコマンドを実行します。
$ python3 -m flask --app=pygeonlp.webapi.app run --port=5000
他のマシンからアクセスする必要がある場合は --host=0.0.0.0
も指定してください。
$ python3 -m flask --app=pygeonlp.webapi.app run --port=5000 --host=0.0.0.0
テストサーバは Ctrl+C
で終了します。
7.2.2. 動作テスト
Flask JSON-RPC の web browsable API 機能を利用して、 ブラウザ上で WebAPI の確認とテストを行なうことができます。
サービス起動後、Web brosable API の URL ( デフォルトでは http://127.0.0.1:5000/api/browse/ ) を開き、動作確認したいメソッドを左メニューから選択します。
パラメータを入力するダイアログが表示されますので、 必要なパラメータを入力して Save ボタンを押すと、 送信されたリクエストが Request 欄に、処理結果が Response 欄に表示されます。
7.2.3. プロダクションサーバ起動
Flask はデバッグ・テスト目的のサーバのため、実際に運用する際には Gunicorn など他の WSGI サーバを利用する必要があります。
たとえば Gunicorn を利用する場合は次のように実行してください。
$ pip3 install gunicorn
$ gunicorn pygeonlp.webapi.app:app --bind=127.0.0.1:5000
--bind はこのサーバにアクセスできるホストとポートを指定します。 どこからでもアクセスできるサービスをポート 8000 で公開したい場合は --bind=0.0.0.0:8000 のように指定してください。
7.2.4. サーバ設定
Pygeonlp の環境変数を利用して WebAPI サーバの設定を変更できます。 詳細は 環境変数 を参照してください。
データベースのパスを指定したい場合
デフォルト以外のディレクトリにデータベースを作成した場合は サーバを起動する前に環境変数 GEONLP_DB_DIR に データベースを作成したディレクトリのパスをセットしてください。
$ export GEONLP_DB_DIR=/usr/local/share/geonlp/db/
NEologdを利用したい場合
MeCab システム辞書として NEologd などデフォルトの IPADIC 以外の辞書を利用する場合、 サーバを起動する前に環境変数 GEONLP_MECAB_DIC_DIR に 辞書ディレクトリのパスをセットしてください。
$ export MECAB_DIC_DIR=$HOME/mecab-ipadic-neologd/
詳細は NEologd 連携 を参照してください。
Jageocoderを利用したい場合
環境変数 JAGEOCODER_SERVER_URL に Jageocoder サーバの URL を設定するか、Jageocoder の住所辞書をインストールしてから サーバを起動してください。
詳細は 住所ジオコーダー連携 を参照してください。