Для того чтобы научить Nextcloud работать с форматами файлов HEIC, MOV и использовать ffmpeg, необходимо внести несколько изменений в файл docker-compose.yml. Вот подробная инструкция:
1. Убедитесь, что у вас установлен Docker и Docker Compose.
2. Создайте папку под проект Nextcloud и перейдите в нее:
mkdir nextcloud cd nextcloud
3. Создайте файл docker-compose.yml и откройте его для редактирования:
touch docker-compose.yml nano docker-compose.yml
4. Вставьте следующий код в файл docker-compose.yml:
version: '3' services: app: image: nextcloud:fpm restart: always depends_on: - db volumes: - ./nextcloud:/var/www/html environment: - POSTGRES_DB=nextcloud - POSTGRES_USER=nextcloud - POSTGRES_PASSWORD=nextcloud - NEXTCLOUD_TRUSTED_DOMAINS=your.domain.com - NEXTCLOUD_PREVIEW_LIBREOFFICE_PATH=/usr/bin/libreoffice - NEXTCLOUD_PREVIEW_ENABLE_LIBREOFFICE=true - NEXTCLOUD_ENABLE_PREVIEWS=true ports: - 8080:80 db: image: postgres:12 restart: always environment: - POSTGRES_DB=nextcloud - POSTGRES_USER=nextcloud - POSTGRES_PASSWORD=nextcloud
Обратите внимание на следующие изменения:
- В секции services/app/environment
добавлены переменные окружения NEXTCLOUD_PREVIEW_ENABLE_LIBREOFFICE=true
и NEXTCLOUD_ENABLE_PREVIEWS=true
, чтобы включить предварительный просмотр файлов.
- Добавлены две переменные NEXTCLOUD_PREVIEW_LIBREOFFICE_PATH=/usr/bin/libreoffice
и NEXTCLOUD_TRUSTED_DOMAINS=your.domain.com
. Замените "your.domain.com" на ваш домен.
5. Сохраните и закройте файл docker-compose.yml.
6. Запустите контейнеры с помощью docker-compose:
docker-compose up -d
7. Для добавления поддержки формата файла HEIC и MOV в Nextcloud вам потребуется отключить модуль предварительного просмотра и обработки файлов на основе метаданных изображений Exif, так как он может вызывать ошибку импорта файлов HEIC и MOV. Для этого выполнив следующие шаги:
- Войдите в контейнер Nextcloud:
docker exec -it nextcloud_app_1 bash
- Перейдите в папку конфигурации Nextcloud:
cd /var/www/html/config
- Измените файл config.php следующим образом:
nano config.php
- Добавьте следующие строки в конец файла, перед закрывающей строкой );
:
'enable_previews' => false, 'enable_previews_implicit_flushing' => false,
- Сохраните и закройте файл config.php.
- Перезапустите контейнер Nextcloud:
exit docker-compose up -d
8. Установите ffmpeg в контейнер Nextcloud. Для этого вам потребуется войти в контейнер и выполнить следующую команду:
docker exec -it nextcloud_app_1 apt-get update && apt-get install -y ffmpeg
Обратите внимание, что имя контейнера может отличаться в зависимости от вашего проекта Nextcloud.
9. После завершения установки ffmpeg перезапустите контейнер Nextcloud:
docker-compose restart app
Теперь Nextcloud должен поддерживать файлы HEIC, MOV и использовать ffmpeg для их обработки и предварительного просмотра.