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 を確認してください。
Weblate 用の virtualenv を作成する:
uv venv ~/weblate-env
Weblate 用 の virtualenv を有効にする:
. ~/weblate-env/bin/activate
オプションの依存関係も含めて 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
)の指定が必要です。
~/weblate-env/lib/python3.9/site-packages/weblate/settings_example.py
を~/weblate-env/lib/python3.9/site-packages/weblate/settings.py
にコピーする。新しい
settings.py
ファイルの設定値を、必要に応じて変更する。少なくともデータベースの資格情報と Django 秘密鍵の設定が必要ですが、運用環境の初期設定には、さらに多くの変更が必要です。参照: 詳細設定。Weblate 用のデータベースと構造を作成する(設定例では、PostgreSQL を使用する。Weblate のデータベース設定 で運用環境に対応した初期設定を確認する):
weblate migrate
参考
管理者ユーザーアカウント
admin
を作成し、そのパスワードを生成してクリップボードにコピーし、後で使用するために忘れずに保存:weblate createadmin
ヒント
以前に管理者パスワードを見逃したり失くしたりした場合、新しいパスワードを生成するコマンド:
weblate createadmin --update
参考
Web サーバーの静的ファイルを収集する(参照: 実行サーバー、 静的ファイルの提供):
weblate collectstatic
JavaScript ファイルと CSS ファイルを圧縮する(省略可能、参照: クライアント アセットの圧縮):
weblate compress
Celery ワーカーを起動する。開発目的であれば必要ないが、運用サーバーであれば必ず起動すること。詳細については、 Celery を使用するバックグラウンド タスク を確認:
~/weblate-env/lib/python3.9/site-packages/weblate/examples/celery start
開発サーバーを起動する(運用サーバーの設定については、実行サーバー を確認):
weblate runserver
インストール後¶
おめでとうございます。Weblate サーバーは稼働したので、使用を開始してください。
http://localhost:8000/
から、Weblate にアクセスできます。インストール時に取得した管理者としてサインインするか、新規ユーザーとして登録します。
Weblate virtualenv が有効な場合は、weblate コマンドを使用して Weblate コマンドを実行できるように変更されました。参照: 管理コマンド。
Ctrl+C を使用してテストサーバーを停止できます。
/manage/performance/
URL(参照: 性能レポート)または weblate check --deploy を使用して、インストールの潜在的な問題を確認してください。参照: 運用環境の設定。
翻訳を追加する¶
管理画面(
http://localhost:8000/create/project/
)から、翻訳するプロジェクトを作成します。詳細についは プロジェクトの設定 を確認してください。ここで必要な指定は、プロジェクト名とその Web サイトだけです。
実際の翻訳用のオブジェクトであるコンポーネントを作成します。コンポーネントは VCS リポジトリの場所を特定し、翻訳するファイルを選択します。詳細は、コンポーネント構成 を確認してください。
ここで重要な項目は コンポーネント名、ソースコードのリポジトリ、および翻訳可能なファイルを検索するための ファイル マスク です。Weblate は、GNU gettext PO(ポータブル オブジェクト)、Android 文字列リソース、Apple iOS 文字列、Java プロパティ、Stringsdict 形式、Fluent 形式 など、幅広い形式に対応しています。詳細については、対応するファイル形式 を確認してください。
上記の作業が完了したら(VCS リポジトリのサイズや翻訳するメッセージの数により、処理に時間がかかります)、翻訳を開始できます。