BIKA LIMS と ReportLab のインストールと設定ガイド
前提条件
- Ubuntu(記事の手順は一般的な Debian 系に適用可)。
- root または sudo 権限を持つユーザー。
- Plone / Zope インスタンスの設置先パス($INSTANCE_HOME など)。
- 変数(例: $BIKA_WGET_ADDRESS 等)は環境に合わせて事前に設定してください。
重要: コマンドはそのまま実行するとファイルを上書きしたり、システムに影響します。必ず変数内容を確認してください。
ダウンロードと展開
BIKA と ReportLab のアーカイブを取得して展開します。
sudo wget $BIKA_WGET_ADDRESS -P $DOWNLOAD_DIR
sudo tar -xzf $DOWNLOAD_DIR/$BIKA_TARBALL -C $MY_PRODUCTS_DIR
sudo wget $REPORTLAB_WGET_ADDRESS -P $DOWNLOAD_DIR
sudo tar -xzvf $DOWNLOAD_DIR/$REPORTLAB_TARBALL -C $MY_PRODUCTS_DIR
ReportLab のインストール(Ubuntu 用パッケージ)
Ubuntu のパッケージから ReportLab の適切なバージョンを入手します(記事例では Hardy Heron 互換の python-reportlab を利用)。
sudo apt-get install python-reportlab
このパッケージはシステムの Python パスに reportlab を配置します。後でその場所を指定してフォントを登録します。
BIKA 用フォントの準備と配置
BIKA が利用するフォントをダウンロードして ReportLab のフォントディレクトリにコピーします。
sudo mkdir $MY_PRODUCTS_DIR/$BIKAFONTS_DIR
sudo wget $BIKAFONTS_WGET_ADDRESS -P $DOWNLOAD_DIR
sudo cp $DOWNLOAD_DIR/$BIKAFONTS_ZIPFILE $MY_PRODUCTS_DIR/$BIKAFONTS_DIR/$BIKAFONTS_ZIPFILE
必要なら unzip をインストールして展開します。
sudo apt-get install unzip
cd $MY_PRODUCTS_DIR/$BIKAFONTS_DIR
sudo unzip -j $MY_PRODUCTS_DIR/$BIKAFONTS_DIR/$BIKAFONTS_ZIPFILE
ReportLab のインストール先を特定
ReportLab がどこにインストールされているかを探します(例: python2.4 にインストールされているケース)。
REPORTLAB_INSTALL_LOCATION=`sudo find / -name reportlab -print | grep python2.4`
ReportLab のフォント格納ディレクトリを作成してコピーします。
INSTALLED_FONTS_DIR=$REPORTLAB_INSTALL_LOCATION/fonts
sudo mkdir $INSTALLED_FONTS_DIR
sudo cp $MY_PRODUCTS_DIR/$BIKAFONTS_DIR/* $INSTALLED_FONTS_DIR
インストール先パスを確認してメモします(例: usr/lib/python2.4/site-packages/reportlab/fonts)。
$INSTALLED_FONTS_DIR
例: usr/lib/python2.4/site-packages/reportlab/fonts
reportlab の設定ファイルを編集してフォントパスを追加
ReportLab の設定ファイルを開き、Linux の Adobe フォントパスに続けて BIKA フォントのパスを追加します。
sudo nano $REPORTLAB_INSTALL_LOCATION/rl_config.py
nano の基本操作: 矢印キーで移動、ctrl-k で行を切り取り、ctrl-u で貼り付け、ctrl-x で終了、保存は y。
設定ファイル内に Linux の Adobe フォントを示す行(例)を見つけ、コピーして BIKA フォントのパスに置き換えます。
例:
‘/usr/lib/Acrobat9/Resource/Font’, #Linux, Acrobat 5?
編集後の例:
‘ usr/lib/python2.4/site-packages/reportlab/fonts ‘, #Linux, BIKA fonts
編集を保存して終了します。
Bika 本体のインストール
Plone の Products フォルダへ Bika を配置します。
sudo cp $MY_PRODUCTS_DIR/$BIKA_VERSION/PloneProducts/* $INSTANCE_HOME/Products -r
ID サーバのスクリプトを移動します。
sudo cp $INSTANCE_HOME/Products/bika/scripts/start-id-server $INSTANCE_HOME
注意: 複数の Plone インスタンスがある場合、start-id-server 内のポート番号(例: 8081)を競合しない値に変更する必要があります。単一インスタンスであれば変更不要です。
Zope の設定に IDServer を登録
zope.conf を探して編集し、IDServerURL を追加します。
ZOPECONF_FILE=`sudo find / -name zope.conf -print`
sudo nano $ZOPECONF_FILE
次の環境設定ブロックを探し、以下のように編集します。
IDServerURL http://localhost:8081
保存して終了します。
ID サーバと Zope の起動
ID サーバと Zope を起動します(USERNAME は実際のユーザー名に置き換えてください)。
su USERNAME $INSTANCE_HOME/start-id-server
$INSTANCE_HOME/bin/zopectl start
BIKA サイトへアクセスして Plone サイトを作成
ブラウザで Zope 管理インターフェースにアクセスします(LIMSERVERlocalip は ifconfig 等で確認したサーバーの IP)。
http://LIMSERVERlocalip:8080
Zope 管理画面 (ZMI) で admin ユーザーでログインします。パスワードが分からない場合はサーバ上でパスワードファイルを検索して確認します。
sudo find / -name *password*
該当ファイルを nano 等で確認してください。
ZMI で「manage」→「add」を選び、Plone site を追加します。id フィールドに bika 用のサイト名(例: bika-site-name)を入力し、下の Plone site オプションから bika を選んで追加します。
サイト作成後、以下の URL で BIKA にアクセスできます。
http://LIMSERVERlocalip:8080/bika-site-name
よくある問題と対処例
- フォントが反映されない: rl_config.py に正しいフルパスが入っているか、ReportLab のインストール先が合っているか確認してください。Python のバージョン差で別の site-packages にある場合があります。
- ポート競合: start-id-server のポート(デフォルト 8081)が別プロセスと被っている場合、別のポートを指定して zope.conf と start-id-server を合わせて変更してください。
- 権限エラー: sudo を付けてもコピー/作成がエラーになる場合、対象ディレクトリの所有者と権限を確認してください(chown/chmod)。
- 管理者パスワード不明: Zope のパスワードファイルを探し、慎重に確認します。必要なら管理者アカウントを再作成する手順を検討してください。
役割別チェックリスト
管理者:
- システムユーザーと sudo 権限を確認
- サーバ IP(ifconfig)を取得
- ファイアウォールで 8080/8081 ポートを許可
デプロイ担当:
- 変数($MY_PRODUCTS_DIR 等)を事前に設定
- アーカイブをダウンロード・展開
- ReportLab のインストール箇所を確認
運用担当:
- サービスの起動/停止コマンドを把握
- ログ(Zope/Plone)の場所を確認
- バックアップ手順を用意
ミニ手順(要約)
- BIKA と ReportLab をダウンロード
- ReportLab を apt でインストール
- BIKA フォントを ReportLab の fonts ディレクトリへコピー
- rl_config.py を編集してフォントパスを登録
- Bika を Products にコピー
- start-id-server と zopectl を起動
- ZMI で Plone サイトを追加
チェックポイントと受入条件
- ReportLab のフォントディレクトリに BIKA フォントが存在すること
- rl_config.py に正しいパスが設定されていること
- start-id-server が指定ポートで起動していること
- Zope にログインでき、Plone サイトが追加できること
参考のコマンド集
ダウンロード・展開・コピーに使う代表コマンドは以下の通りです(記事本文にも同じコマンドを記載):
sudo wget ...
sudo tar -xzf ...
sudo apt-get install python-reportlab
sudo unzip -j ...
sudo cp ...
sudo find / -name reportlab -print
sudo nano ...
トラブルシューティングの簡易フローチャート
flowchart TD
A[開始] --> B{ReportLab はインストール済みか}
B -- はい --> C{フォントはコピー済みか}
B -- いいえ --> D[apt で python-reportlab をインストール]
D --> C
C -- はい --> E{rl_config.py にパスがあるか}
C -- いいえ --> F[fonts にファイルをコピー]
F --> E
E -- はい --> G[Zope と id-server を起動]
E -- いいえ --> H[rl_config.py を編集]
H --> G
G --> I[ブラウザでアクセス]
I --> J[完了]
1行用語集
- ReportLab: Python で PDF を生成するライブラリ。ReportLab の fonts に BIKA フォントを置く。
- ZMI: Zope Management Interface。Plone の管理画面。
- IDServer: Plone/BIKA の識別情報を管理するためのサーバ。
最後にまとめ
本ガイドでは、BIKA LIMS を動かすための ReportLab インストール、フォント配置、設定ファイル編集、Zope/ID サーバ起動までの一連の流れを示しました。実行前にパスや変数、ポートの衝突、ファイル権限を必ず確認してください。
重要: 本手順は環境に依存します。特に Python のバージョンや site-packages の場所が異なるとパスが変わるため、find コマンド等でインストール先を正確に特定してください。
お疲れさまでした。BIKA サイトにアクセスして動作を確認してください。