Quiz 2
Registry Synced

Learning Objectives

173 words
1 min read

Reading compass

Now · Step 1: Docker Compose

Learning Objectives

  • Set up microservices architecture
  • Configure Docker containers
  • Implement message queuing
  • Docker Desktop installed
  • Redis/RabbitMQ installed
  • PostgreSQL installed
  • Kubernetes (optional) installed (Diagram)

Step 1: Docker Compose

yaml
# docker-compose.yml
version: '3.8'
services:
  auth-service:
    build: ./auth-service
    ports:
      - "5001:5000"
  core-service:
    build: ./core-service
    ports:
      - "5002:5000"
  postgres:
    image: postgres:15
    environment:
      POSTGRES_DB: mad2db
      POSTGRES_PASSWORD: secret
  redis:
    image: redis:7-alpine

Step 2: Flask Microservice Template

python
# service/app.py
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_jwt_extended import JWTManager
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'postgresql://user:pass@postgres/dbname'
db = SQLAlchemy(app)
jwt = JWTManager(app)
if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)
  • docker-compose up starts all services
  • Each service responds on its port
  • Database migrations run
  • Redis accessible
  • Docker build fails: Check Dockerfile syntax
  • Port conflicts: Change host port mappings
  • DB connection: Check POSTGRES_PASSWORD matches
  • Docker Compose works
  • Multiple services deployed
  • Inter-service communication working
  • Redis/RabbitMQ configured
  • Environment variables documented Join Discord NextMilestone 2: Database Design & ORM
Document outline

Keep your place and jump directly to a heading.

Table of Contents
System Normal // Awaiting Context

Intelligence Hub

Navigate the knowledge graph to generate context. The Hub adapts dynamically to surface backlinks, related notes, and metadata insights.