Nextcloud 31 #12
4 changed files with 87 additions and 3 deletions
|
@ -9,6 +9,9 @@ nextcloud_admin_user: admin
|
|||
nextcloud_admin_password: mynextcloud
|
||||
nextcloud_trusted_domains: localhost
|
||||
nextcloud_trusted_proxies: [ '172.18.0.0/16' ]
|
||||
nextcloud_default_phone_region: DE
|
||||
nextcloud_database_utils:
|
||||
- nextcloud-mysql-innodb-convert-row-format.sh
|
||||
virtual_host: localhost
|
||||
letsencrypt_host:
|
||||
letsencrypt_email:
|
||||
|
|
16
files/nextcloud-mysql-innodb-convert-row-format.sh
Executable file
16
files/nextcloud-mysql-innodb-convert-row-format.sh
Executable file
|
@ -0,0 +1,16 @@
|
|||
#!/bin/sh
|
||||
|
||||
# Source: https://help.nextcloud.com/t/upgrade-to-nextcloud-hub-10-31-0-0-incorrect-row-format-found-in-your-database/218366/13
|
||||
|
||||
# # Prompt for database credentials
|
||||
# read -p "Enter Database Name: " MYSQL_DATABASE
|
||||
# read -p "Enter Username: " MYSQL_USER
|
||||
# read -s -p "Enter Password: " MYSQL_PASSWORD
|
||||
# echo
|
||||
|
||||
mysql -u "$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE" -Bse "
|
||||
SELECT CONCAT('ALTER TABLE \`', TABLE_NAME, '\` ROW_FORMAT=DYNAMIC;')
|
||||
FROM INFORMATION_SCHEMA.TABLES
|
||||
WHERE TABLE_SCHEMA = '$MYSQL_DATABASE'
|
||||
AND ENGINE = 'InnoDB'
|
||||
" | mysql -u "$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE"
|
|
@ -15,6 +15,25 @@
|
|||
group: "{{ docker_user }}"
|
||||
mode: '0644'
|
||||
|
||||
- name: Ensure database utils scripts directory exists
|
||||
file:
|
||||
path: /home/{{ docker_user }}/nextcloud/utils
|
||||
state: directory
|
||||
owner: '{{ docker_user }}'
|
||||
group: '{{ docker_user }}'
|
||||
|
||||
- name: Provide database utils scripts
|
||||
copy:
|
||||
src: "{{ item }}"
|
||||
dest: /home/{{ docker_user }}/nextcloud/utils/
|
||||
owner: "{{ docker_user }}"
|
||||
group: "{{ docker_user }}"
|
||||
mode: '0644'
|
||||
loop: "{{ nextcloud_database_utils }}"
|
||||
when:
|
||||
- nextcloud_database_utils is defined
|
||||
- nextcloud_database_utils | length > 0
|
||||
|
||||
- name: Provide docker-compose.yml
|
||||
template:
|
||||
src: templates/docker-compose.nextcloud.yml.j2
|
||||
|
@ -101,15 +120,16 @@
|
|||
CRON_SCHEDULE="{{ restic_cron_schedule }}"
|
||||
when: nextcloud_enable_restic_compose_backup == true
|
||||
|
||||
- name: "docker-compose: Teardown existing Nextcloud service"
|
||||
- name: "docker-compose: Teardown existing Nextcloud service (will keep your volumes)"
|
||||
docker_compose:
|
||||
project_src: "/home/{{ docker_user }}/nextcloud/"
|
||||
state: absent
|
||||
tags: ['never', 'teardown']
|
||||
tags: ['teardown']
|
||||
|
||||
- name: "docker-compose: Start Nextcloud service"
|
||||
docker_compose:
|
||||
project_src: "/home/{{ docker_user }}/nextcloud/"
|
||||
pull: true
|
||||
register: output
|
||||
tags: service_start
|
||||
|
||||
|
@ -131,6 +151,11 @@
|
|||
host: "{{ nextcloud_ip }}"
|
||||
port: 80
|
||||
|
||||
- name: "docker-compose: Enable maintenance mode using occ"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T -u www-data nextcloud-app /bin/sh -c './occ maintenance:mode --on'
|
||||
|
||||
- name: "docker-compose: Set overwriteprotocol using occ"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
|
@ -172,6 +197,45 @@
|
|||
debug:
|
||||
var: "{{ nextcloud_app_install_result }}"
|
||||
|
||||
- name: "docker-compose: Set default_phone_region using occ"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T -u www-data nextcloud-app /bin/sh -c './occ config:system:set default_phone_region --value="{{ nextcloud_default_phone_region }}"'
|
||||
|
||||
- name: "docker-compose: Set maintenance_window_start to 1 using occ (This will run maintenance tasks between 01:00-05:00 UTC)"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T -u www-data nextcloud-app /bin/sh -c './occ config:system:set maintenance_window_start --value=1 --type=integer'
|
||||
|
||||
- name: "docker-compose: Update all apps using occ"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T -u www-data nextcloud-app /bin/sh -c './occ app:update --all'
|
||||
|
||||
- name: "docker-compose: Add missing indices using occ"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T -u www-data nextcloud-app /bin/sh -c './occ db:add-missing-indices'
|
||||
|
||||
- name: "docker-compose: Run maintenance:repair --include-expensive using occ"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T -u www-data nextcloud-app /bin/sh -c './occ maintenance:repair --include-expensive'
|
||||
|
||||
- name: "docker-compose: Run database utils"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T mysqldb /bin/sh '/opt/utils/{{ item }}'
|
||||
loop: "{{ nextcloud_database_utils }}"
|
||||
when:
|
||||
- nextcloud_database_utils is defined
|
||||
- nextcloud_database_utils | length > 0
|
||||
|
||||
- name: "docker-compose: Disable maintenance mode using occ"
|
||||
shell:
|
||||
chdir: /home/{{ docker_user }}/nextcloud/
|
||||
cmd: docker-compose exec -T -u www-data nextcloud-app /bin/sh -c './occ maintenance:mode --off'
|
||||
|
||||
- name: "Test whether Nextcloud is healthy from the outside"
|
||||
when: not ansible_check_mode
|
||||
become: false
|
||||
|
|
|
@ -12,6 +12,7 @@ services:
|
|||
volumes:
|
||||
- mysqldb:/var/lib/mysql
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
- ./utils/:/opt/utils:ro
|
||||
env_file:
|
||||
- db.env
|
||||
{% if nextcloud_enable_restic_compose_backup %}
|
||||
|
@ -21,7 +22,7 @@ services:
|
|||
restart: unless-stopped
|
||||
|
||||
nextcloud-app:
|
||||
image: nextcloud:29-fpm-alpine
|
||||
image: nextcloud:31-fpm-alpine
|
||||
restart: unless-stopped
|
||||
container_name: nextcloud-app
|
||||
depends_on:
|
||||
|
|
Loading…
Add table
Reference in a new issue