Compare commits
3 Commits
f2e66f002b
...
5d00b7637d
Author | SHA1 | Date | |
---|---|---|---|
5d00b7637d | |||
5bc19d4ddc | |||
80317cae6a |
@ -10,6 +10,8 @@ nextcloud_data_path: "{{ nextcloud_basepath }}/data"
|
||||
nextcloud_storage_path: "{{ nextcloud_basepath }}/storage"
|
||||
nextcloud_fpm_config_path: "{{ nextcloud_basepath }}/fpm-config"
|
||||
|
||||
nextcloud_background_job_mode: cron
|
||||
|
||||
nextcloud_database_type: sqlite
|
||||
nextcloud_database_name: nextcloud
|
||||
nextcloud_database_user: nextcloud
|
||||
@ -56,3 +58,22 @@ nextcloud_paths:
|
||||
mode: "0770"
|
||||
owner: "{{ nextcloud_user_info.uid|default(nextcloud_user) }}"
|
||||
group: "root"
|
||||
|
||||
# PHP OpCache tuning
|
||||
nextcloud_opcache_enable: 1
|
||||
nextcloud_opcache_interned_strings_buffer_mb: 32
|
||||
nextcloud_opcache_max_accelerated_files: 32531
|
||||
nextcloud_opcache_memory_consumption_mb: 256
|
||||
nextcloud_opcache_fast_shutdown: 1
|
||||
nextcloud_opcache_save_comments: 1
|
||||
nextcloud_opcache_revalidate_freq: 1
|
||||
nextcloud_opcache_validate_timestamps: 0
|
||||
|
||||
# FPM config
|
||||
nextcloud_fpm_max_children: 64
|
||||
nextcloud_fpm_start_servers: "{{ nextcloud_fpm_max_children / 2 | int }}"
|
||||
nextcloud_fpm_min_spare_servers: "{{ nextcloud_fpm_max_children / 4 | int }}"
|
||||
nextcloud_fpm_max_spare_servers: "{{ nextcloud_fpm_max_children * 3/4 | int }}"
|
||||
|
||||
nextcloud_php_memory_limit: 1024M
|
||||
nextcloud_php_upload_limit: 1024M
|
||||
|
@ -70,6 +70,7 @@
|
||||
mode: "0640"
|
||||
owner: root
|
||||
group: root
|
||||
when: nextcloud_background_job_mode == 'cron'
|
||||
notify:
|
||||
- reload-systemd
|
||||
|
||||
@ -80,22 +81,12 @@
|
||||
mode: "0640"
|
||||
owner: root
|
||||
group: root
|
||||
when: nextcloud_background_job_mode == 'cron'
|
||||
notify:
|
||||
- reload-systemd
|
||||
|
||||
- meta: flush_handlers
|
||||
|
||||
- name: Enable systemd timer for nextcloud cron
|
||||
systemd:
|
||||
name: "nextcloud-cron.timer"
|
||||
enabled: yes
|
||||
|
||||
- name: Ensure systemd timer for nextcloud cron is started
|
||||
systemd:
|
||||
name: "nextcloud-cron.timer"
|
||||
state: started
|
||||
|
||||
|
||||
- name: Ensure docker container for nextcloud is running
|
||||
docker_container:
|
||||
name: "{{ nextcloud_container_name }}"
|
||||
@ -107,3 +98,35 @@
|
||||
purge_networks: "{{ nextcloud_container_purge_other_networks }}"
|
||||
restart_policy: "{{ nextcloud_container_restart_policy }}"
|
||||
state: started
|
||||
|
||||
- name: Enable systemd timer for nextcloud cron
|
||||
systemd:
|
||||
name: "nextcloud-cron.timer"
|
||||
enabled: yes
|
||||
when: nextcloud_background_job_mode == 'cron'
|
||||
|
||||
- name: Ensure systemd timer for nextcloud cron is started
|
||||
systemd:
|
||||
name: "nextcloud-cron.timer"
|
||||
state: started
|
||||
when: nextcloud_background_job_mode == 'cron'
|
||||
|
||||
- name: Check nextcloud background job mode
|
||||
community.docker.docker_container_exec:
|
||||
container: "{{ nextcloud_container_name }}"
|
||||
command: "{{ nextcloud_occ_command }} config:app:get core backgroundjobs_mode"
|
||||
user: "{{ nextcloud_user_info.uid }}"
|
||||
tty: yes
|
||||
register: nextcloud_current_backgroundjob_mode
|
||||
# As nextcloud might still be starting, retry this task
|
||||
retries: 5
|
||||
delay: 5
|
||||
changed_when: false
|
||||
|
||||
- name: Set nextcloud background job mode to {{ nextcloud_background_job_mode }}
|
||||
community.docker.docker_container_exec:
|
||||
container: "{{ nextcloud_container_name }}"
|
||||
command: "{{ nextcloud_occ_command }} config:app:set core backgroundjobs_mode {{ nextcloud_background_job_mode }}"
|
||||
user: "{{ nextcloud_user_info.uid }}"
|
||||
tty: yes
|
||||
when: nextcloud_current_backgroundjob_mode.stdout != nextcloud_background_job_mode
|
||||
|
@ -1,14 +1,14 @@
|
||||
opcache.enable=1
|
||||
opcache.interned_strings_buffer=32
|
||||
opcache.enable={{ nextcloud_opcache_enable }}
|
||||
opcache.interned_strings_buffer={{ nextcloud_opcache_interned_strings_buffer_mb }}
|
||||
; next prime in the set which is suitable for large installations
|
||||
; default for this setting is 10000 which picks the prime 7963,
|
||||
; but default installation of nextcloud has already ~9k php files
|
||||
; see https://www.php.net/manual/en/opcache.configuration.php#ini.opcache.max-accelerated-files
|
||||
opcache.max_accelerated_files=32531
|
||||
opcache.memory_consumption=256
|
||||
opcache.max_accelerated_files={{ nextcloud_opcache_max_accelerated_files }}
|
||||
opcache.memory_consumption={{ nextcloud_opcache_memory_consumption_mb }}
|
||||
; deconstructor optimizations
|
||||
opcache.fast_shutdown=1
|
||||
;opcache.save_comments=1
|
||||
opcache.fast_shutdown={{ nextcloud_opcache_fast_shutdown }}
|
||||
opcache.save_comments={{ nextcloud_opcache_save_comments }}
|
||||
; not used if validate_timestamps=0
|
||||
;opcache.revalidate_freq=1
|
||||
opcache.validate_timestamps=0
|
||||
opcache.revalidate_freq={{ nextcloud_opcache_revalidate_freq }}
|
||||
opcache.validate_timestamps={{ nextcloud_opcache_validate_timestamps }}
|
||||
|
@ -6,9 +6,9 @@ group = www-data
|
||||
listen = 127.0.0.1:9000
|
||||
|
||||
pm = dynamic
|
||||
pm.max_children = 64
|
||||
pm.start_servers = 32
|
||||
pm.min_spare_servers = 24
|
||||
pm.max_spare_servers = 48
|
||||
pm.max_children = {{ nextcloud_fpm_max_children }}
|
||||
pm.start_servers = {{ nextcloud_fpm_start_servers }}
|
||||
pm.min_spare_servers = {{ nextcloud_fpm_min_spare_servers }}
|
||||
pm.max_spare_servers = {{ nextcloud_fpm_max_spare_servers }}
|
||||
|
||||
;pm.max_requests=500
|
||||
|
@ -22,3 +22,7 @@ nextcloud_container_base_environment_yaml: |+2
|
||||
{% elif nextcloud_database_type == 'sqlite' %}
|
||||
SQLITE_DATABASE: "{{ nextcloud_database_name }}"
|
||||
{% endif %}
|
||||
PHP_MEMORY_LIMIT: "{{ nextcloud_php_memory_limit }}"
|
||||
PHP_UPLOAD_LIMIT: "{{ nextcloud_php_upload_limit }}"
|
||||
|
||||
nextcloud_occ_command: "php occ"
|
||||
|
Loading…
Reference in New Issue
Block a user