Ejercicio 2: Ejecutando decide en docker-compose

De Wiki de EGC
Saltar a: navegación, buscar

Para ejecutar decide en docker, primero nos situaremos en el directorio docker del repositorio de decide.

Una vez situados en ese directorio, ejecutaremos

1 docker-compose up

Observaremos que nos da un error ¿Porqué se puede estar dando?

Los cambios a realizar son:

 1 docker-compose.yml
 2 ...
 3 services:
 4   db:
 5     restart: always
 6     container_name: decide_db
 7     image: postgres:10.15-alpine
 8     volumes:
 9       - db:/var/lib/postgresql/data
10     networks:
11       - decide
12     environment:
13       - POSTGRES_PASSWORD=postgres
14 ...

Vemos que hemos definido una versión para la imagen y que definimos el parametro postgres_password.

 1 Dockerfile
 2 ...
 3 from python:3.7-alpine
 4 
 5 RUN apk add --no-cache git postgresql-dev gcc libc-dev
 6 RUN apk add --no-cache gcc g++ make libffi-dev python3-dev build-base
 7 
 8 RUN pip install gunicorn
 9 RUN pip install psycopg2
10 RUN pip install ipdb
11 RUN pip install ipython
12 ...
13 OJO: CAMBIAR TAMBIEN LA URL DEL REPOSITORIO
14 ...

Vemos que hemos definido una versión de la imagen de partida

1 requirements.txt
2 ...
3 django-cors-headers==2.1.0
4 requests==2.18.4
5 django-filter==1.1.0
6 psycopg2-binary==2.7.4
7 django-rest-swagger==2.2.0
8 coverage==4.5.2
9 ...

Vemos que hemos definido una versión binaria para psycopg2 ¿Porqué se da este cambio?

 1 docker-settings.py
 2 ...
 3 
 4 DATABASES = {
 5     'default': {
 6         'ENGINE': 'django.db.backends.postgresql',
 7         'NAME': 'postgres',
 8         'USER': 'postgres',
 9         'PASSWORD':'postgres',
10         'HOST': 'db',
11         'PORT': 5432,
12     }
13 }
14 
15 ...

Añadimos el parametro PASSWORD a la url.