swcc.ansible_nextcloud

Nextcloud Ansibleロール

ビルドステータス Ansible Galaxy

Nextcloudをnextcloud.comサーバーからインストールします。このロールは、PHP-FPMでNextcloudを実行することを想定しており、NBZ4live.php-fpm ロールを依存関係としてインストールします。

例のプレイブック

基本的なプレイブックの例:

- hosts: webservers
  roles:
    - role: swcc.nextcloud
      nextcloud_destination: /home/nextcloud
      nextcloud_version: 19.0.3

ロールのパラメータ

変数 デフォルト タイプ 説明
nextcloud_version 20.0.2 string インストールするNextcloudのバージョン
nextcloud_destination /var/www string Nextcloudをインストールする場所(ファイルシステムの{{ nextcloud_destination}}/nextcloud/ディレクトリにインストールされます)
nextcloud_dir_user www-data string インストールされたディレクトリの所有者となるUnixユーザー
nextcloud_dir_group www-data string インストールされたディレクトリの所有グループとなるUnixグループ
nextcloud_php_memory_limit 512M string PHPのメモリ制限設定。Nextcloudが推奨するデフォルトは512Mです。
nextcloud_config {} dict Nextcloudのconfig/config.phpファイルに設定するキーと値の辞書オブジェクト。内容が有効なPHP値である必要があります。例:文字列は、値をconfig.phpファイルにリテラルとして記載するために"'mystring'"として定義する必要があります。
nextcloud_onlyoffice_force_flush_period 未定義 string https://help.nextcloud.com/t/onlyoffice-data-loss/20586/5 からのハックで、OnlyOfficeの変更を定期的にディスクにフラッシュするためのもの。例:値は300sとすると5分ごとにデータをフラッシュします。

_オプション_、バックアップ関連の変数:

変数 デフォルト タイプ 説明
nextcloud_backup - object Nextcloudインスタンスのデータベースとデータディレクトリの両方をバックアップする場合は、このオブジェクトを定義します。
nextcloud_backup.destination_server - string すべてのファイルを受信する宛先バックアップサーバー(rsync経由)
nextcloud_backup.retention 7 number インスタンスに保持するデータベースバックアップの日数
nextcloud_backup.directory nextcloud_destination + '/nextcloud/data' string バックアップするNextcloudデータディレクトリのパス
nextcloud_backup.pg - object データベースへの接続詳細。オブジェクトキーの詳細については下記を参照してください。
nextcloud_backup.pg.pg_dump_binary - string サーバー上のpg_dumpバイナリのパス
nextcloud_backup.pg.host localhost string PostgreSQLデータベースのホスト
nextcloud_backup.pg.port 5432 string PostgreSQLデータベースのポート
nextcloud_backup.pg.dbname nextcloud string PostgreSQLデータベースの名前
nextcloud_backup.pg.username nextcloud string PostgreSQLデータベースのユーザー
nextcloud_backup.pg.password - string PostgreSQLデータベースのパスワード

⚠️ このロールを実行する前に、依存するphp-fpm ansibleロールのphp-fpm変数も確認してください。⚠️

最も重要なことは、php_fpm_version変数を設定して実行したいphpのバージョンを確認することです。以下は、ほとんどのニーズに合ったphp-fpm依存ロールの例の設定です:

php_fpm_version: 7.4

php_fpm_pool_defaults:
  pm: dynamic
  pm.max_children: 10
  pm.start_servers: 2
  pm.min_spare_servers: 1
  pm.max_spare_servers: 4
php_fpm_pools:
  - name: www
    user: www-data
    group: www-data
    listen: "/run/php/php{{ php_fpm_version }}-fpm.sock"
    listen.owner: www-data
    listen.group: www-data
    chdir: /var/www
    env:
      PATH: "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
      TMPDIR: "/tmp"
      TMP: "/tmp"
      HOSTNAME: "$HOSTNAME"

Ansible使用を簡単にするためのMakefile

将来のAnsible実行を簡単にするために、少し小さなMakefileを書きました。ぜひチェックしてみてください

*.debパッケージをGithubのリリースからダウンロードしてインストールし、ansible-make helpで使用を開始してください。

ライセンス

GPLv3

プロジェクトについて

Install and configure Nextcloud

インストール
ansible-galaxy install swcc.ansible_nextcloud
ライセンス
gpl-3.0
ダウンロード
132
所有者