-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-services.yml
115 lines (114 loc) · 3.38 KB
/
docker-services.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
# Assumes an accompanying file for environment variables: ./.env
# This should contain values for:
# PGADMIN_DEFAULT_EMAIL
# PGADMIN_DEFAULT_PASSWORD
services:
app:
# build:
# context: ./
# args:
# - ENVIRONMENT=DEV
image: monotasker/kcworks:latest
restart: "unless-stopped"
environment:
- INVENIO_INSTANCE_PATH=${INVENIO_INSTANCE_PATH}
- INVENIO_SECRET_KEY=${INVENIO_SECRET_KEY}
- "INVENIO_CACHE_REDIS_URL=redis://${REDIS_DOMAIN}/0"
- "INVENIO_ACCOUNTS_SESSION_REDIS_URL=redis://${REDIS_DOMAIN}/1"
- "INVENIO_RATELIMIT_STORAGE_URI=redis://${REDIS_DOMAIN}/3"
- "INVENIO_RATELIMIT_STORAGE_URL=redis://${REDIS_DOMAIN}/3"
- "INVENIO_CELERY_RESULT_BACKEND=redis://${REDIS_DOMAIN}/2"
- "INVENIO_COMMUNITIES_IDENTITIES_CACHE_REDIS_URL=redis://${REDIS_DOMAIN}/4"
- "INVENIO_BROKER_URL=amqp://guest:guest@mq:5672/"
- "INVENIO_CACHE_TYPE=redis"
- "INVENIO_CELERY_BROKER_URL=amqp://guest:guest@mq:5672/"
- "INVENIO_SEARCH_HOSTS=['${INVENIO_SEARCH_DOMAIN}']"
# - "INVENIO_SEARCH_HOSTS=['search:9200']"
- "INVENIO_SQLALCHEMY_DATABASE_URI=${INVENIO_SQLALCHEMY_DATABASE_URI}"
- "INVENIO_WSGI_PROXIES=2"
env_file:
- ./.env
frontend:
container_name: kcworks-frontend
build: ./docker/nginx/
image: monotasker/kcworks-frontend
restart: "unless-stopped"
ports:
- "80"
- "443"
env_file:
- ./.env
cache:
container_name: kcworks-cache
image: redis:7
restart: "unless-stopped"
read_only: true
ports:
- "6379:6379"
db:
container_name: kcworks-db
image: postgres:12.4
restart: "unless-stopped"
ports:
- "5432:5432"
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
env_file:
- ./.env
pgadmin:
container_name: kcworks-pgadmin
image: dpage/pgadmin4:6
restart: "unless-stopped"
ports:
- "5050:80"
environment:
- PGADMIN_DEFAULT_EMAIL=${PGADMIN_DEFAULT_EMAIL}
- PGADMIN_DEFAULT_PASSWORD=${PGADMIN_DEFAULT_PASSWORD}
env_file:
- ./.env
volumes:
- ./docker/pgadmin/servers.json:/pgadmin4/servers.json
mq:
container_name: kcworks-mq
image: rabbitmq:3-management
restart: "unless-stopped"
ports:
- "15672:15672"
- "5672:5672"
search:
container_name: kcworks-search
image: opensearchproject/opensearch:2.3.0
restart: "unless-stopped"
environment:
# settings only for development. DO NOT use in production!
# TODO: Fix for production
- bootstrap.memory_lock=true
- "OPENSEARCH_JAVA_OPTS=-Xms512m -Xmx512m"
- "DISABLE_INSTALL_DEMO_CONFIG=true"
- "DISABLE_SECURITY_PLUGIN=true"
- "discovery.type=single-node"
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
mem_limit: 2g
ports:
- "9200:9200"
- "9600:9600"
opensearch-dashboards:
container_name: kcworks-opensearch-dashboards
image: opensearchproject/opensearch-dashboards:2.3.0
ports:
- "5601:5601"
expose:
- "5601"
environment:
# settings only for development. DO NOT use in production!
# TODO: change in production
- 'OPENSEARCH_HOSTS=["http://${INVENIO_SEARCH_DOMAIN}"]'
- "DISABLE_SECURITY_DASHBOARDS_PLUGIN=true"