Código fuente wiki de Instalacion (docker)

Versión 4.2 por dFa el 2025/02/22 09:31

Mostrar los últimos autores
1 (% class="jumbotron" %)
2 (((
3 (% class="container" %)
4 (((
5 = NEXTCLOUD =
6
7 Instalación de nextcloud mediante docker
8 )))
9 )))
10
11 ----
12
13
14 {{toc/}}
15
16 (% class="row" %)
17 (((
18 (% class="col-xs-12 col-sm-8" %)
19 (((
20 ----
21
22 = INICIO =
23
24 == Instalación ==
25
26 La instalación consta de 4 servicios:
27
28 * db: Base de datos mariadb
29 * redes: Base de datos de memoria caché redis
30 * app: Aplicativo nextcloud
31 * web: Servidor web nginx
32
33 El primer paso es generar nuestro docker-compose:
34
35 {{code language="yaml"}}
36 services:
37 db:
38 image: mariadb:10.11
39 container_name: nextcloud-db
40 restart: unless-stopped
41 command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
42 volumes:
43 - database:/var/lib/mysql
44 environment:
45 MYSQL_ROOT_PASSWORD: Ko5b0sq977j1saaCQ3SD55
46 MYSQL_DATABASE: nextcloud
47 MYSQL_USER: nextcloud
48 MYSQL_PASSWORD: Ko5b0sq977j1saaCQ3SD55
49
50 redis:
51 image: redis:alpine
52 container_name: nextcloud-redis
53 restart: unless-stopped
54 volumes:
55 - redis:/data
56
57 app:
58 image: nextcloud:fpm
59 container_name: nextcloud-app
60 restart: unless-stopped
61 ports:
62 - 9000:9000
63 depends_on:
64 - db
65 - redis
66 volumes:
67 - data:/var/www/html
68 - user:/var/nextcloud/data
69 - /datos/dFa:/mnt
70 environment:
71 MYSQL_HOST: db
72 MYSQL_DATABASE: nextcloud
73 MYSQL_USER: nextcloud
74 MYSQL_PASSWORD: Ko5b0sq977j1saaCQ3SD55
75 REDIS_HOST: redis
76 PHP_UPLOAD_LIMIT: 0
77 web:
78 image: nginx
79 container_name: nextcloud-web
80 restart: always
81 ports:
82 - 8080:80
83 depends_on:
84 - app
85 volumes:
86 - nginx_conf:/etc/nginx
87 - data:/var/www/html
88 volumes_from:
89 - app
90
91 volumes:
92 data:
93 driver: local
94 database:
95 driver: local
96 redis:
97 driver: local
98 nginx_conf:
99 driver: local
100 user:
101 driver: local
102 {{/code}}
103
104 Los volúmenes se han configurado por las siguientes razones:
105
106 * database: Ficheros de la base de datos mysql
107 * redis: Ficheros de la base de datos redes
108 * data: Ficheros del aplicativo nextcloud (es necesario que lo usen tanto el contenedor app como el contenedor web)
109 * user: Ficheros de los perfiles de usuarios creados para nextcloud
110 * nginx_conf: Fichero nginx.conf
111
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
114 Desplegamos los contenedores:
115
116 [[image:1740216587698-323.png]]
117
118
119
120
121 )))
122
123
124
125
126 (% class="col-xs-12 col-sm-4" %)
127 (((
128
129 )))
130 )))