Cambios para el documento Instalacion (docker)

Última modificación por dFa el 2025/02/24 10:01

Desde la versión 13.1
editado por dFa
el 2025/02/22 09:53
Cambiar el comentario: No hay comentario para esta versión
Hasta la versión 21.1
editado por dFa
el 2025/02/22 15:38
Cambiar el comentario: No hay comentario para esta versión

Resumen

Detalles

Propiedades de página
Contenido
... ... @@ -26,9 +26,9 @@
26 26  La instalación consta de 4 servicios:
27 27  
28 28  * db: Base de datos mariadb
29 -* redes: Base de datos de memoria caché redis
29 +* redis: Base de datos de memoria caché redis
30 30  * app: Aplicativo nextcloud
31 -* web: Servidor web nginx
31 +* web: Servidor web nginx, se encarga de redireccionar las peticiones hacia el aplicativo (app)
32 32  
33 33  El primer paso es generar nuestro docker-compose:
34 34  
... ... @@ -74,6 +74,11 @@
74 74   MYSQL_PASSWORD: Ko5b0sq977j1saaCQ3SD55
75 75   REDIS_HOST: redis
76 76   PHP_UPLOAD_LIMIT: 0
77 + command: >
78 + sh -c "chown -R www-data:www-data /var/nextcloud &&
79 + chmod -R 770 /var/nextcloud &&
80 + exec /entrypoint.sh php-fpm"
81 +
77 77   web:
78 78   image: nginx
79 79   container_name: nextcloud-web
... ... @@ -104,7 +104,7 @@
104 104  Los volúmenes se han configurado por las siguientes razones:
105 105  
106 106  * database: Ficheros de la base de datos mysql
107 -* redis: Ficheros de la base de datos redes
112 +* redis: Ficheros de la base de datos de memoria caché
108 108  * data: Ficheros del aplicativo nextcloud (es necesario que lo usen tanto el contenedor app como el contenedor web)
109 109  * user: Ficheros de los perfiles de usuarios creados para nextcloud
110 110  * nginx_conf: Fichero nginx.conf
... ... @@ -111,6 +111,8 @@
111 111  
112 112  Además, en este caso, se ha realizado un bind de nuestro disco /datos para que sea utilizado como punto de montaje en nextcloud. Dado que es un contenedor, es necesario mapearlo para que la interfaz web tenga acceso al recurso de alguna manera.
113 113  
119 +También se añade la adición de permisos al directorio /var/nextcloud durante la generación del contenedor, dado que el directorio se crea durante la creación del volumen "user".
120 +
114 114  Desplegamos los contenedores:
115 115  
116 116  [[image:1740216653242-590.png]]
... ... @@ -260,9 +260,17 @@
260 260  }
261 261  {{/code}}
262 262  
270 +Reiniciamos los contenedores para que apliquen todos los cambios y comprobamos si funciona correctamente accediendo a través del puerto expuesto, en este caso el 8080:
271 +
272 +* [[http:~~/~~/ipservidor:8080>>http://ipservidor:8080]]
273 +
274 +[[image:1740220925385-402.png]]
275 +
276 +Indicamos un usuario y contraseña y comenzará la instalación.
277 +
263 263  === config.php ===
264 264  
265 -Hacemos lo mismo con el fichero config.php que se encuentra en el volumen app dentro del directorio config:
280 +Una vez realziada la instralación, hacemos lo mismo con el fichero config.php que se encuentra en el volumen app dentro del directorio config:
266 266  
267 267  {{code language="php"}}
268 268  <?php
... ... @@ -318,6 +318,12 @@
318 318  
319 319  En este fichero php tendremos que tener en cuenta modificar los valores nuestra dirección ip:puerto y nuestra dns en consecuencia.
320 320  
336 +Tambien debemos tener en cuenta la directiva:
337 +
338 +* 'datadirectory' => '/var/nextcloud/data',
339 +
340 +Dado que indica el directorio de datos dentro del contenedor.
341 +
321 321  === Permisos ===
322 322  
323 323  Es importante tener en cuenta los permisos de los directorios, sobre todo los directorios de datos y perfiles de usuarios.
... ... @@ -329,26 +329,53 @@
329 329  * user: 33 (www-data)
330 330  * group: tape (www-data)
331 331  
353 +Y deben contener permisos 770
354 +
332 332  Hemos ajustado el compose para que se adapten estos permisos de forma automática, no obstante es importante revisarles si nextcloud indica algún problema de permisos.
333 333  
334 334  == Acceso ==
335 335  
336 -Reiniciamos los contenedores para que apliquen todos los cambios y comprobamos si funciona correctamente accediendo a través del puerto expuesto, en este caso el 8080:
337 337  
338 -* [[http:~~/~~/ipservidor:8080>>http://ipservidor:8080]]
339 -
340 340  = EXTRA =
341 341  
342 -== Acceso ==
343 -)))
362 +== Compartir recurso que se usa en docker por smb ==
344 344  
345 -== ==
364 +Si vamos a compartir un directorio de datos usado por docker tambien a través de smb, es importante tener en cuenta los permisos.
346 346  
366 +Para ello añadiremos nuestro usuario de smb al grupo tape e indicaremos en el recurso smb como usuario valido dicho grupo.
347 347  
368 +Para añadir el usuario al grupo tape:
348 348  
370 +{{code language="bash"}}
371 +usermod -a -G tape usuario
372 +{{/code}}
349 349  
350 -(% class="col-xs-12 col-sm-4" %)
351 -(((
374 +Para configurar el grupo en smb:
375 +
376 +{{code language="bash"}}
377 +[datos]
378 + path = /datos/dFa
379 + browsable = yes
380 + writable = yes
381 + valid users = @tape
382 + #valid users = dFa
383 + read only = no
384 + force create mode = 0777
385 + force directory mode = 0777
386 + guest ok = no
387 +{{/code}}
388 +
389 +De esta manera tanto docker como el usuario de smb que hemos añadido al grupo tape tendrá permisos sobre el recurso.
390 +
391 +También para evitar problemas, es importante asignar ACL's para que el recurso siempre tenga los mismos permisos cuando se añade un nuevo fichero y además aseguramos que el contenido ya existente se encuentra en un estado correcto en cuanto a los mismos:
392 +
393 +{{code language="bash"}}
394 +setfacl -R -m g:tape:rwx /datos/
395 +setfacl -R -d -m g:tape:rwx /datos/
396 +{{/code}}
397 +
398 +
399 +
352 352  
353 353  )))
354 354  )))
1740220925385-402.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.dFa
Tamaño
... ... @@ -1,0 +1,1 @@
1 +173.2 KB
Contenido