Otras configuraciones - HostingChile/nextcloud GitHub Wiki

Modificar/agregar configuraciones a docker-compose

Si se quiere modificar alguna de las configuraciones se puede agregar un archivo de configuración de docker-compose en la carpeta /home/nextcloud/custom con las directivas necesarias (https://docs.docker.com/compose/extends/). Estos archivos son ignorados por el control de versiones, por lo que hay que respaldarlos de manera manual.

Por ejemplo, para hacer que la base de datos sea accesible remotamente se puede crear el archivo /home/nextcloud/custom/docker-compose.database.yml con el siguiente contenido:

version: '3'

services:
    database:
        ports:
            - 3306:3306

Otro ejemplo interesante es querer cambiar la imagen con la cual se crean los contenedores, por ejemplo para que incluya alguna librería, script, software o extensión PHP adicional que use esta instalación de Nextcloud. En el siguiente ejemplo se muestran los archivos que hay que crear para agregar la extensión de PHP mailparse a las imágenes:

/home/nextcloud/custom/Dockerfile-Nextcloud

FROM nextcloud:latest
RUN pecl install mailparse \
    && docker-php-ext-enable mailparse

/home/nextcloud/custom/docker-compose.nextcloud.yml

version: '3'

services:
    nextcloud:
        image: nextcloud-custom
        build:
            context: ./custom
            dockerfile: Dockerfile-Nextcloud

Recuerde modificar la variable de entorno COMPOSE_FILE como aparece en las instrucciones de instalación. Se debe agregar incluyendo custom/ (custom/docker-compose.mysql.yml en el primer ejemplo). Recuerde que se debe volver a levantar los contenedores con docker-compose up -d para que los cambios hagan efecto.

Usar certificado propio

  • Eliminar la variables de entorno LETSENCRYPT_* de los archivos docker-compose.*.yml que corresponda.
  • Copiar en /home/nextcloud/data/proxy/certs/ los archivos .crt y .key que componen el certificado. El nombre de estos archivos debe ser exactamente igual al nombre del VIRTUAL_HOST del servicio, terminado con .crt y .key

Con esto el contendor proxy generará el virtualhost correspondiente para que use el certificado.

Agregar extensiones editables en el navegador

Para agregar extensiones de archivos que puedan ser editadas en el editor integrado (aplicación Text editor (files_texteditor)) se debe crear el archivo vim /home/nextcloud/data/nextcloud/config/mimetypemapping.json y agregar extensiones siguiendo el formato:

{
  "ext": ["text/plain"],
  "ext2": ["text/plain"]
}

Esto hará que los archivos terminados en .ext y .ext2 sean abiertos por el editor.

Importante: Este cambio afecta sólo a los archivos que sean subidos después del cambio. Para que afecte a los archivos que ya existian es necesario borrar estos archivos de la tabla filecache de la base de datos. Esto hará que los archivos ya no sean visualziados en Nextcloud, por lo que hay que volver a indexarlos con docker-compose exec --user www-data nextcloud php occ files:scan <usuario>. En caso de que afecte a más de un usario, se debe usar docker-compose exec --user www-data nextcloud php occ files:scan --all.

Agregar extensiones PHP a Nextcloud

A veces es necesario agregar extensiones de PHP a Nextcloud para el uso de algunas apps. Para agregar extensiones se deben seguir las instrucciones indicadas en https://hub.docker.com/_/php/ en la sección How to install more PHP extensions. Para ver el listado de extensiones PHP actualmente activadas se puede usar el comando docker-compose exec nextcloud php -m

Los cambios que se hagan a los contenedores se pierden al eliminarlos, por lo tanto para hacer permanentes los cambios hay que considerar lo indicado en Modificar/agregar configuraciones a docker-compose.

⚠️ **GitHub.com Fallback** ⚠️