version: "2.1" services: mysql: image: mysql:8.0.28-oracle container_name: license-manager.mysql environment: MYSQL_ROOT_PASSWORD: "" MYSQL_ALLOW_EMPTY_PASSWORD: "yes" MYSQL_DATABASE: "license_manager" networks: - devstack_default volumes: - license_manager_mysql8:/var/lib/mysql app: image: openedx/license-manager build: context: . dockerfile: Dockerfile 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: - mysql - worker networks: - devstack_default # 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 memcached: image: memcached:1.4.24 container_name: license-manager.memcache worker: image: openedx/license-manager.worker build: context: . dockerfile: Dockerfile command: bash -c 'cd /edx/app/license_manager/license_manager && celery -A license_manager worker -l DEBUG' container_name: license-manager.worker depends_on: - mysql 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 networks: - devstack_default ports: - "18171:18171" restart: always stdin_open: true tty: true volumes: - .:/edx/app/license_manager/license_manager networks: devstack_default: external: true volumes: license_manager_mysql8: