l3d.etebase

Ansible Galaxy MIT License Maintenance

Ansibleロール EteBase - EteSync 2.0 サーバーバックエンド

EteSyncのバックエンドであるEtebaseをセットアップおよび構成するためのAnsibleロールです -> https://github.com/etesync/server

詳細

このAnsibleロールは、EteSyncのバックエンドであるEtebaseをインストールおよび構成します。これは、連絡先、カレンダー、タスク、メモを安全に同期するためのソフトウェアです。 このAnsibleロールでは、Etebase用の別のユーザーが作成され、このユーザーのホームディレクトリに最新のEtebaseがダウンロードされます。構成が作成され、指定されたPythonの依存関係が仮想環境にインストールされます。また、オプションでEtebaseをsystemdサービス経由で自動的に開始することも可能です。

このAnsibleロールは、Etebase内にユーザーを作成することはありません。また、ウェブサーバーの構成も作成しません。詳細については、追加情報のセクションをご覧ください。

デフォルト変数

変数 説明
etebase__user etebase Etebase用のUnixユーザー
etebase__group etebase Etebase用のUnixグループ
etebase__user_home /var/lib/etebase Etebaseユーザーのホーム
etebase__shell /bin/false Etebaseユーザーのデフォルトシェル
etebase__venv_path {{ etebase__user_home }}/venv Etebaseの仮想環境パス
etebase__socket /tmp/etebase_server.sock Etebaseソケットパス (etebase__systemd_setuptrueに設定されている場合のみ)
etebase__package_state present latestに設定すると、必要なシステムおよびpipパッケージを最新バージョンにアップグレードします
etebase__version latest Etebaseのリリースタグ
etebase__secrets_dir {{ etebase__user_home }}/secrets Etebaseの秘密情報を保存するパス
etebase__collectstatic true Etebase用の静的ファイルを生成します
etebase__restart_webserver false 設定変更時にウェブサーバーを再起動するにはtrueに設定します (etebase__systemd_setupが必要)
etebase__webserver_service nginx.service ウェブサーバーの再起動が必要なsystemdユニット
etebase__systemd_setup false Etebaseを前述のsystemdソケットでsystemdユニットとして開始するにはtrueに設定します
etebase__create_backup false Etebaseをアップグレードする前にバックアップを作成するかどうか
etebase__backup_destination {{ etebase__user_home }}/backup バックアップの保存先ディレクトリ
etebase__backup_sqlite true バックアップを取る際にsqlite3データベースをスキップするにはこれを変更します
submodules_versioncheck false このAnsibleロールの簡単なバージョンチェックを行うかどうか

etebase-server.iniのオプション

変数 説明
etebase__global_secret_file {{ etebase__secrets_dir }}/secret.txt secret.txtのパス
etebase__global_debug false デバッグを有効にするにはtrue
etebase__global_static_root {{ etebase__user_home }}/static_root 静的ルートのパス
etebase__global_media_root {{ etebase__user_home }}/media_root メディアのパス
etebase__global_extra 設定ファイルの[global]セクションの追加パラメータ用の変数
etebase__allowed_hosts_allowed_host1 * このEtebaseサーバーの許可されたホスト
etebase__allowed_hosts_extra 設定ファイルの[allowed_hosts]セクションの追加パラメータ用の変数
etebase__database_engine django.db.backends.sqlite3 データベースエンジン
etebase__database_name {{ etebase__secrets_dir }}/etebase.db.sqlite3 sqlite3データベースのパス
etebase__database_extra 設定ファイルの[database]セクションの追加パラメータ用の変数
etebase__database_options_extra 設定ファイルの[database_options]セクションの追加パラメータ用の変数
etebase__ldap_extra 設定ファイルの[ldap]セクションの追加パラメータ用の変数
etebase__config_extra 設定ファイルの最後の追加パラメータ用の変数

追加情報

ウェブサーバーの構成についての詳細は、github.com/etesync/server/wiki/Production-setup-using-Nginxで確認できます。systemd経由でuvicorn ASGIサーバーを起動するためにこのロールを使用した場合は、etebase__socket変数に使用した値を忘れないでください。このためには、etebase__systemd_setuptrueに設定する必要があります。

管理ユーザーは自分で作成する必要があります。これを行うには、特権ユーザーとして手動でログインし、etebase__user_homeに移動します。ダウンロードしたEtebaseのコードディレクトリに入り、venvで次のコマンドを実行します:

# Etebaseホームに移動
cd /var/lib/etebase/

# 最新のEtebaseバージョンに変更
ls -l etebase_*
cd etebase_v0.10.0  # 例:バージョン

# 最新のvenvを有効にする
ls -l /var/lib/etebase/venv
source /var/lib/etebase/venv/v0.10.0/bin/activate  # 例:バージョン

# 新しいスーパーユーザーを作成
python3 ./manage.py createsuperuser

なお、このロールでは、Ansibleユーザーがsudo権限でコマンドを実行できることが必要です。

サンプルプレイブック

---
- name: example.comにEtebaseサーバーをインストール
  hosts: example.com
  roles:
    - {role: do1jlr.etebase, tags: etebase}
  vars:
    etebase__allowed_hosts_allowed_host1: 'example.com'
    etebase__systemd_setup: true
    submodules_versioncheck: true

要件

このAnsibleロールの一部にcommunity.generalコレクションが必要です。次のコマンドでインストールできます:

ansible-galaxy collection install -r requirements.yml --upgrade

貢献

問題をオープンしたり、*(さらに良いことに)* プルリクエストを作成したりすることには遠慮しないでください。

プロジェクトについて

Ansible role to Setup and Confugure Etebase - The Backend from EteSync 2.0.

インストール
ansible-galaxy install l3d.etebase
ライセンス
mit
ダウンロード
654
所有者
Ansible roles provide a framework for fully independent, or interdependent collections of variables,tasks,files,templates &modules. Here we maintain some. enjoy