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

ハードウェア要件

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

  • 3 GB の RAM

  • 2 CPU コア

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

注釈

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

メモリ使用量

メモリは多ければ多いほど良い - すべてのレベル(ファイルシステム、データベース、Weblate)でキャッシュとして使用します。数百の翻訳コンポーネントの場合は、少なくとも 4 GB の RAM を推奨します。

ヒント

メモリが推奨よりも少ないシステムの場合は、シングルプロセス Celery の設定 を推奨します。

CPU 使用率

同時使用者が多い場合、必要な CPU コアの数が増えます。

ストレージ使用量

一般的なデータベース ストレージの使用量は、ホストサーバーで管理する 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 cairo-gobject-devel pango-devel \
   gobject-introspection-devel libacl-devel lz4-devel libzstd-devel xxhash-devel \
   libtool-ltdl-devel python3-devel git

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

dnf install openldap-devel libsasl2-devel
dnf install xmlsec1-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

# Gettext for the msgmerge add-on
dnf install gettext

uv パッケージマネージャー

ヒント

Weblate のインストールには uv パッケージマネージャーを使っています。

curl -LsSf https://astral.sh/uv/install.sh | sh

Python モジュール

ヒント

Weblate をシステムから独立した環境にインストールするために、virtualenv を使用します。使い慣れていない場合は、virtualenv User Guide を確認してください。

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

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

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

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

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

    注釈

    一部の Linux ディストリビューションで Weblate を実行すると 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 を介して配布されるバイナリ パッケージとディストリビューションとの互換性がないことが原因です。これに対処するために必要な、システムでのパッケージの再構築方法:

    uv 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
    

    参考

    migrate

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

    weblate createadmin
    

    ヒント

    以前に管理者パスワードを見逃したり失くしたりした場合、新しいパスワードを生成するコマンド:

    weblate createadmin --update
    

    参考

    createadmin

  5. Web サーバーの静的ファイルを収集する(参照: 実行サーバー静的ファイルの提供):

    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 は、GNU gettext PO(ポータブル オブジェクト)Android 文字列リソースApple iOS 文字列Java プロパティStringsdict 形式Fluent 形式 など、幅広い形式に対応しています。詳細については、対応するファイル形式 を確認してください。

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