RedHat、Fedora、CentOS にインストール

ハードウェア要件

Weblate は、最新のハードウェアであれば問題なく動作します。以下は、Weblate を単一のホスト(Weblate、データベース、Web サーバー)で動作させるために必要な最小限の構成:

  • 2 GB の RAM

  • 2 CPU コア

  • 1 GB の記憶容量(HDD or SSD)

メモリは多ければ多いほど良い - すべてのレベル(ファイルシステム、データベース、Weblate)でキャッシュとして使用します。

同時使用者が多い場合、必要な CPU コアの数が増えます。数百の翻訳コンポーネントを使用する場合は、少なくとも 4 GB の RAM が必要です。

一般的なデータベース ストレージの使用量は、ホストサーバーで管理する 100 万語の単語につき約 300 MB 必要です。リポジトリのクローンに必要なストレージ スペースはさまざまですが、Weblate は、シャロー クローンを実行してサイズを最小限に抑える努力をします。

注釈

実際に必要な Weblate のインストールの要件は、Weblate で管理する翻訳のサイズによって大きく変化します。

インストール

システム要件

Python モジュールのビルドの依存関係をインストールする(参照: ソフトウェア要件):

dnf install \
   libxslt-devel libxml2-devel freetype-devel libjpeg-devel zlib-devel \
   libyaml-devel libffi-devel cairo-devel pango-devel \
   gobject-introspection-devel libacl-devel python3-pip python3-virtualenv \
   python3-devel git

使用する機能に応じて、必要なオプションの依存関係をインストールする(参照: オプションの依存関係):

dnf install tesseract-langpack-eng tesseract-devel leptonica-devel
dnf install libldap2-devel libsasl2-devel
dnf install libxmlsec1-devel

必要に応じて、運用サーバーを実行するためのソフトウェアをインストールします(参照: 実行サーバーWeblate のデータベース設定Celery を使用するバックグラウンド タスク)。インストールの規模によっては、これらのコンポーネントを専用サーバーで実行することが必要となります。

ローカルへのインストール手順:

# Web server option 1: NGINX and uWSGI
dnf install nginx uwsgi uwsgi-plugin-python3

# Web server option 2: Apache with ``mod_wsgi``
dnf install apache2 apache2-mod_wsgi

# Caching backend: Redis
dnf install redis

# Database server: PostgreSQL
dnf install postgresql postgresql-contrib

# SMTP server
dnf install postfix

Python モジュール

ヒント

Weblate を、現在とは別のシステム環境にインストールするために、virtualenv を使用します。使い慣れていない場合は、virtualenv :doc:`venv:user_guide`を確認してください。

  1. Weblate 用の virtualenv を作成する:

    virtualenv ~/weblate-env
    
  2. Weblate 用 の virtualenv を有効にする:

    . ~/weblate-env/bin/activate
    
  3. オプションの依存関係も含めて Weblate をインストールする:

    # Install Weblate with all optional dependencies
    pip install "Weblate[all]"
    

    オプションの依存関係の詳細設定については、オプションの依存関係 を確認してください。

    注釈

    Weblate を、一部の Linux ディストリビューションで実行すると発生する libffi エラー:

    ffi_prep_closure(): bad user_data (it seems that the version of the libffi library seen at runtime is different from the 'ffi.h' file seen at compile-time)
    

    これは、PyPI を介して配布されるバイナリ パッケージとディストリビューションとの互換性がないことが原因です。これに対処するために必要な、システムでのパッケージの再構築方法:

    pip install --force-reinstall --no-binary :all: cffi
    

Weblate の設定

注釈

以下の手順は、Weblate で使用する virtualenv が有効であることを前提としています(. ~/weblate-env/bin/activate を実行した結果 )。無効の場合は、weblate コマンドへのフルパス(~/weblate-env/bin/weblate)の指定が必要です。

  1. ~/weblate-env/lib/python3.9/site-packages/weblate/settings_example.py~/weblate-env/lib/python3.9/site-packages/weblate/settings.py にコピーする。

  2. 新しい settings.py ファイルの設定値を、必要に応じて変更する。少なくともデータベースの資格情報と Django 秘密鍵の設定が必要ですが、運用環境の初期設定には、さらに多くの変更が必要です。参照: 詳細設定

  3. Weblate 用のデータベースと構造を作成する(設定例では、PostgreSQL を使用する。Weblate のデータベース設定 で運用環境に対応した初期設定を確認する):

    weblate migrate
    
  4. 管理者ユーザー アカウントを作成し、そのパスワードをクリップボードにコピーし、後で使用するために保存する:

    weblate createadmin
    
  5. Web サーバーの静的ファイルを収集する(ref:`server および ref:`static-files):

    weblate collectstatic
    
  6. JavaScript ファイルと CSS ファイルを圧縮する(省略可能、参照: クライアント アセットの圧縮):

    weblate compress
    
  7. Celery ワーカーを起動する。開発目的であれば必要ないが、運用サーバーであれば必ず起動すること。詳細については、 Celery を使用するバックグラウンド タスク を確認:

    ~/weblate-env/lib/python3.9/site-packages/weblate/examples/celery start
    
  8. 開発サーバーを起動する(運用サーバーの設定については、実行サーバー を確認):

    weblate runserver
    

インストール後

おめでとうございます。Weblate サーバーは稼働したので、使用を開始してください。

  • http://localhost:8000/ から、Weblate にアクセスできます。

  • インストール時に取得した管理者としてサインインするか、新規ユーザーとして登録します。

  • Weblate virtualenv が有効な場合は、weblate コマンドを使用して Weblate コマンドを実行できるように変更されました。

  • Ctrl+C を使用してテストサーバーを停止できます。

  • /manage/performance/ URL(参照: 管理画面)または weblate check --deploy を使用して、インストールの潜在的な問題を確認してください。参照: 運用環境の設定

翻訳を追加する

  1. 管理画面(http://localhost:8000/create/project/)から、翻訳するプロジェクトを作成します。詳細についは プロジェクトの設定 を確認してください。

    ここで必要な指定は、プロジェクト名とその Web サイトだけです。

  2. 実際の翻訳用のオブジェクトであるコンポーネントを作成します。コンポーネントは VCS リポジトリの場所を特定し、翻訳するファイルを選択します。詳細は、コンポーネント構成 を確認してください。

    ここで重要な項目: コンポーネント名ソースコードのリポジトリ、および翻訳可能なファイルを検索するための ファイル マスク。Weblate は、ref:gettextAndroid 文字列リソースApple iOS 文字列Java プロパティStringsdict 形式Fluent 形式 など、幅広い形式に対応しています。詳細については、対応するファイル形式 を確認してください。

  3. 上記の作業が完了したら(VCS リポジトリのサイズや翻訳するメッセージの数により、処理に時間がかかります)、翻訳を開始できます。