diff --git a/docker-compose.yml b/docker-compose.yml index a165a6bf22..cab8ce33fa 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -693,6 +693,83 @@ services: aliases: - edx.devstack.xqueue_consumer + license-manager: + image: edxops/license-manager-dev:latest + container_name: license-manager.app + volumes: + - .:/edx/app/license_manager/ + - ../src:/edx/src:cached + # Use the Django devserver, so that we can hot-reload code changes + command: bash -c 'while true; do python /edx/app/license_manager/manage.py runserver 0.0.0.0:18170; sleep 2; done' + ports: + - "18170:18170" + depends_on: + - mysql80 + - license-manager-worker + # Allows attachment to this container using 'docker attach '. + stdin_open: true + tty: true + environment: + CELERY_ALWAYS_EAGER: 'false' + CELERY_BROKER_TRANSPORT: redis + CELERY_BROKER_HOSTNAME: edx.devstack.redis:6379 + CELERY_BROKER_VHOST: 0 + CELERY_BROKER_PASSWORD: password + DJANGO_SETTINGS_MODULE: license_manager.settings.devstack + DJANGO_WATCHMAN_TIMEOUT: 30 + ENABLE_DJANGO_TOOLBAR: 1 + + + license-manager-worker: + image: edxops/license-manager-dev:latest + command: bash -c 'cd /edx/app/license_manager/license_manager && celery -A license_manager worker -Q license_manager.default -l DEBUG' + container_name: license-manager.worker + depends_on: + - mysql80 + environment: + CELERY_ALWAYS_EAGER: 'false' + CELERY_BROKER_TRANSPORT: redis + CELERY_BROKER_HOSTNAME: edx.devstack.redis:6379 + CELERY_BROKER_VHOST: 0 + CELERY_BROKER_PASSWORD: password + DJANGO_SETTINGS_MODULE: license_manager.settings.devstack + COLUMNS: 80 + hostname: worker.license_manager + ports: + - "18171:18171" + restart: always + stdin_open: true + tty: true + volumes: + - .:/edx/app/license_manager/license_manager + - ../src:/edx/src:cached + + + bulk_enrollment_worker: + image: edxops/license-manager-dev:latest + command: bash -c 'cd /edx/app/license_manager/license_manager && celery -A license_manager worker -Q license_manager.bulk_enrollment -l DEBUG' + container_name: license-manager.bulk_enrollment_worker + depends_on: + - mysql80 + environment: + CELERY_ALWAYS_EAGER: 'false' + CELERY_BROKER_TRANSPORT: redis + CELERY_BROKER_HOSTNAME: edx.devstack.redis:6379 + CELERY_BROKER_VHOST: 0 + CELERY_BROKER_PASSWORD: password + DJANGO_SETTINGS_MODULE: license_manager.settings.devstack + COLUMNS: 80 + hostname: bulk_enrollment_worker.license_manager + ports: + - "18172:18172" + restart: always + stdin_open: true + tty: true + volumes: + - .:/edx/app/license_manager/license_manager + - ../src:/edx/src:cached + + # ========================================================================== # edX Microfrontends # @@ -910,3 +987,4 @@ volumes: mysql57_data: mysql80_data: redis_data: + license_manager_mysql8: