forked from openedx/enterprise-catalog
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
119 lines (112 loc) · 3.55 KB
/
docker-compose.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
services:
mysql:
image: mysql:8.0.28-oracle
container_name: enterprise.catalog.mysql
environment:
MYSQL_ROOT_PASSWORD: ""
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
MYSQL_DATABASE: "enterprise_catalog"
networks:
- devstack_default
volumes:
- enterprise_catalog_mysql8:/var/lib/mysql
# Uncomment these lines to access the database from localhost
# ports:
# - "3307:3306"
memcached:
image: memcached:1.6.6
container_name: enterprise.catalog.memcached
networks:
- devstack_default
command: memcached -vv
app:
# Uncomment this line to use the official catalog base image
# image: edxops/enterprise_catalog:devstack
build:
context: .
dockerfile: Dockerfile
container_name: enterprise.catalog.app
hostname: app.catalog.enterprise
volumes:
- .:/edx/app/enterprise_catalog/enterprise_catalog
- ../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/enterprise_catalog/enterprise_catalog/manage.py runserver 0.0.0.0:18160; sleep 2; done'
ports:
- "18160:18160"
depends_on:
- memcached
- mysql
- worker
networks:
- devstack_default
# Allows attachment to this container using 'docker attach <containerID>'.
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: enterprise_catalog.settings.devstack
ENABLE_DJANGO_TOOLBAR: 1
worker:
build:
context: .
dockerfile: Dockerfile
command: bash -c 'cd /edx/app/enterprise_catalog/enterprise_catalog && celery -A enterprise_catalog worker -Q enterprise_catalog.default -l DEBUG'
container_name: enterprise.catalog.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: enterprise_catalog.settings.devstack
COLUMNS: 80
hostname: worker.catalog.enterprise
networks:
- devstack_default
ports:
- "18161:18161"
restart: always
# Allows attachment to this container using 'docker attach <containerID>'.
stdin_open: true
tty: true
volumes:
- .:/edx/app/enterprise_catalog/enterprise_catalog
curations_worker:
build:
context: .
dockerfile: Dockerfile
command: bash -c 'cd /edx/app/enterprise_catalog/enterprise_catalog && celery -A enterprise_catalog worker -Q enterprise_catalog.curations -l DEBUG'
container_name: enterprise.catalog.curations
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: enterprise_catalog.settings.devstack
COLUMNS: 80
hostname: curations.catalog.enterprise
networks:
- devstack_default
ports:
- "18162:18162"
restart: always
# Allows attachment to this container using 'docker attach <containerID>'.
stdin_open: true
tty: true
volumes:
- .:/edx/app/enterprise_catalog/enterprise_catalog
networks:
devstack_default:
external: true
volumes:
enterprise_catalog_mysql8: