Contenido del curso
Modelos y repositorios
Mensajes y eventos
Indexación mediante Elastic Search
Feed Service
Query Service y Pusher
Últimos pasos
Agregando NATS
Contenido del curso
Agregando NATS
Àlex Grau Roca
EstudianteCristian David Morales Mogollon
EstudianteSergio Nicolas Silva Mendieta
EstudianteJosue Daniel Bustamante
EstudianteFernando Cordero
EstudiantePersonalmente creo que el dockerfile del postgres no es necesario, entiendo que el objetivo es tener una imagen con la base de datos ya creada, pero veo más práctico realizar la carga de las tablas en el momento de generar el contenedor. En la carpeta database tengo la estructura database/initdb/1.sql, donde 1.sql = up.sql. Entonces el docker-compose queda así (utilizo la versión 3.9):
version: "3.9" services: postgres: image: postgres:10.3 container_name: platzi-events-cqrs-db restart: always environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: mysecretpassword POSTGRES_DB: mydb volumes: - ./database/initdb:/docker-entrypoint-initdb.d ports: - "54321:5432" command: [ "postgres" ] nats: image: nats-streaming:0.9.2 container_name: platzi-events-cqrs-nats restart: always
Bueno, incluso podrias usar una herramienta que se encargue de las migraciones por ti, https://github.com/golang-migrate/migrate, y harias lo mismo, tu dejas tus scripts en una carpeta migration/ y el se encargaria de leerlas, es interesante ver las multiples formas en que se puede resolver esto
Seria de bastante ayuda implementar un diagrama de la arquitectura que estamos desarrollando
La imagen de nats-streaming ha sido deprecada. https://hub.docker.com/_/nats-streaming
services: pgadmin: image: dpage/pgadmin4 environment: - PGADMIN_DEFAULT_EMAIL=root - PGADMIN_DEFAULT_PASSWORD=root ports: - '5050:80' depends_on: - postgres postgres: build: './database' environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: mysecretpassword POSTGRES_DB: mydb restart: always ports: - '5432:5432' ```Yo le agregue el pgadmin