services: notification: container_name: $APP_NAME build: context: ${CODEBASE_ROOT} args: CONTAINER_APP_ROOT: ${CONTAINER_APP_ROOT} profiles: [ prod, alpha, dev ] restart: always environment: - APP_NAME=${APP_NAME} - SERVICE_API_ACCESS_HOST=${SERVICE_API_ACCESS_HOST} - SERVICE_API_ACCESS_PORT=${SERVICE_API_ACCESS_PORT} - RABBITMQ_HOST=freeleaps2-rabbitmq - RABBITMQ_PORT=${RABBITMQ_PORT} - SYSTEM_USER_ID=${SYSTEM_USER_ID} - SMS_FROM=${SMS_FROM} - EMAIL_FROM=${EMAIL_FROM} - SECRET_KEY=${SECRET_KEY} - SENDGRID_API_KEY=${SENDGRID_API_KEY} - TWILIO_ACCOUNT_SID=${TWILIO_ACCOUNT_SID} - TWILIO_AUTH_TOKEN=${TWILIO_AUTH_TOKEN} - LOG_BASE_PATH=${LOG_BASE_PATH} - BACKEND_LOG_FILE_NAME=${BACKEND_LOG_FILE_NAME} - APPLICATION_ACTIVITY_LOG=${APPLICATION_ACTIVITY_LOG} ports: - ${SERVICE_API_ACCESS_PORT}:${SERVICE_API_ACCESS_PORT} command: - /bin/sh - -c - | uvicorn webapi.main:app --reload --port=${SERVICE_API_ACCESS_PORT} --host=${SERVICE_API_ACCESS_HOST} networks: - devbox_freeleaps2-network volumes: - type: bind source: $DOCKER_BACKEND_LOG_HOME target: $LOG_BASE_PATH rabbitmq: image: rabbitmq:3-management container_name: "freeleaps2-rabbitmq" profiles: [ prod, alpha ] ports: - "5672:5672" # RabbitMQ communication port - "15672:15672" # RabbitMQ management port networks: - devbox_freeleaps2-network healthcheck: test: [ "CMD", "rabbitmq-diagnostics", "ping" ] interval: 30s retries: 5 start_period: 10s timeout: 10s networks: devbox_freeleaps2-network: external: true