-
Notifications
You must be signed in to change notification settings - Fork 0
/
compose.yaml
33 lines (31 loc) · 1.55 KB
/
compose.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#############################################
# Archivo compose.yaml
#############################################
# 1. Define los servicios o las diferentes imágenes que se tomarán en cuenta
# para construir el contenedor
# 2. build indica que se van a construir las imágenes indicadas en el Dockerfile
# 3. Se indica el puerto en donde se va a ejecutar el contenedor.
# ATENCIÓN: Ese mismo puerto es el que debe ponerse en Google Cloud
# 4. Volumes indican el lugar de donde se tomará la base de datos y el lugar donde se
# encontrará en el contenedor
# 5. La image de de database es la imagen que contiene sqlite3. En este caso, es una imagen
# pública que se encuentra en el registro público de contenedores Docker. Se puede usar el
# comando docker search sqlite3 para buscar una imagen pública de sqlite3
# 6. Se usa docker pull keinos/sqlite3 para descargar en local una imagen pública de sqlite3
# 7. docker-compose lo que hace es crear un contenedor a partir de todas las imágenes especificadas
# en el archivo compose.yaml. No sé muy bien cómo hace luego Google Cloud para construir el
# contenedor, pero lo hace
# 8. La importancia de mantener la base de datos en un volumen aparte, es que puede compartirse
# entre varios contenedores y además, puede modificarse o incluso borrarse
# la imagen de la api, sin que eso afecte la base de datos
services:
api:
build: .
ports:
- "80:80"
volumes:
- ./api/data/db:/code/data/db
database:
image: keinos/sqlite3
volumes:
- ./api/data/db:/code/data/db