-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathdocker-compose.nbsearch.yml
114 lines (107 loc) · 4.32 KB
/
docker-compose.nbsearch.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
volumes:
nbsearch_solr_data_vol:
external: false
nbsearch_minio_data_vol:
external: false
services:
nbsearch-solr:
build:
context: ./images/nbsearch-solr
volumes:
- nbsearch_solr_data_vol:/var/solr/
restart: always
networks:
- backend
nbsearch-solr-base-proxy:
build:
context: ./images/nbsearch-solr-proxy
depends_on:
- nbsearch-solr
restart: always
networks:
- backend
nbsearch-solr-proxy:
image: bitnami/oauth2-proxy:7
depends_on:
- jupyterhub
- nbsearch-solr-base-proxy
restart: always
command:
- --http-address=0.0.0.0:80
- --proxy-prefix=/services/solr/oauth2
- --upstream=http://nbsearch-solr-base-proxy:80/
- --provider=oidc
- --provider-display-name=JupyterHub
- --client-id=${NBSEARCHDB_OAUTH_CLIENT_ID:-nbsearchdb_oauth_client_changeme}
- --client-secret=${NBSEARCHDB_OAUTH_CLIENT_SECRET:-nbsearchdb_oauth_secret_changeme}
- --cookie-secret=${NBSEARCHDB_COOKIE_SECRET:-nbsearchdb_cookiesecret_changeme}
- --redirect-url=https://${SERVER_NAME}/services/solr/oauth2/callback
- --oidc-issuer-url=http://jupyterhub:8000/services/oidcp/internal/
- --email-domain=admin.jupyterhub
- --skip-provider-button=true
networks:
- backend
nbsearch-minio:
image: minio/minio:latest
environment:
MINIO_ACCESS_KEY: "nbsearchak"
MINIO_SECRET_KEY: "nbsearchsk"
volumes:
- nbsearch_minio_data_vol:/data
command: ['server', '/data', '--compat']
restart: always
networks:
- backend
nbsearch-provisioner:
build:
context: ./images/nbsearch-provisioner
volumes:
- '/home/user-notebooks:/user-notebooks'
nbsearch-crawler:
build:
context: ./images/nbsearch-crawler
volumes:
- type: bind
source: /home/user-notebooks
target: /home/jovyan/notebooks
read_only: true
bind:
propagation: rslave
environment:
TZ: 'JST-9'
NBSEARCHDB_SOLR_BASE_URL: "${NBSEARCHDB_SOLR_BASE_URL:-http://nbsearch-solr:8983}"
NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME: "${NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME:-}"
NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD: "${NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD:-}"
NBSEARCHDB_S3_ENDPOINT_URL: "${NBSEARCHDB_S3_ENDPOINT_URL:-http://nbsearch-minio:9000}"
NBSEARCHDB_S3_ACCESS_KEY: "${NBSEARCHDB_S3_ACCESS_KEY:-nbsearchak}"
NBSEARCHDB_S3_SECRET_KEY: "${NBSEARCHDB_S3_SECRET_KEY:-nbsearchsk}"
NBSEARCHDB_S3_REGION_NAME: "${NBSEARCHDB_S3_REGION_NAME:-}"
NBSEARCHDB_S3_BUCKET_NAME: "${NBSEARCHDB_S3_BUCKET_NAME:-notebooks}"
NBSEARCHDB_SOLR_NOTEBOOK: "${NBSEARCHDB_SOLR_NOTEBOOK:-jupyter-notebook}"
NBSEARCHDB_SOLR_CELL: "${NBSEARCHDB_SOLR_CELL:-jupyter-cell}"
NBSEARCHDB_MY_SERVER_URL: "${NBSEARCHDB_MY_SERVER_URL:-http://localhost:8888/}"
NBSEARCHDB_AUTO_UPDATE: "1"
restart: always
networks:
- backend
jupyterhub:
# Override NBSEARCHDB_* environment variables
environment:
NBSEARCHDB_ENABLE_OIDC_SERVICE: "1"
NBSEARCHDB_SOLR_BASE_URL: "${NBSEARCHDB_SOLR_BASE_URL:-http://nbsearch-solr:8983}"
NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME: "${NBSEARCHDB_SOLR_BASIC_AUTH_USERNAME:-}"
NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD: "${NBSEARCHDB_SOLR_BASIC_AUTH_PASSWORD:-}"
NBSEARCHDB_S3_ENDPOINT_URL: "${NBSEARCHDB_S3_ENDPOINT_URL:-http://nbsearch-minio:9000}"
NBSEARCHDB_S3_ACCESS_KEY: "${NBSEARCHDB_S3_ACCESS_KEY:-nbsearchak}"
NBSEARCHDB_S3_SECRET_KEY: "${NBSEARCHDB_S3_SECRET_KEY:-nbsearchsk}"
NBSEARCHDB_S3_REGION_NAME: "${NBSEARCHDB_S3_REGION_NAME:-}"
NBSEARCHDB_S3_BUCKET_NAME: "${NBSEARCHDB_S3_BUCKET_NAME:-notebooks}"
NBSEARCHDB_SOLR_NOTEBOOK: "${NBSEARCHDB_SOLR_NOTEBOOK:-jupyter-notebook}"
NBSEARCHDB_SOLR_CELL: "${NBSEARCHDB_SOLR_CELL:-jupyter-cell}"
NBSEARCHDB_MY_SERVER_URL: "${NBSEARCHDB_MY_SERVER_URL:-http://localhost:8888/}"
NBSEARCHDB_AUTO_UPDATE: ""
NBSEARCHDB_OAUTH_CLIENT_ID: "${NBSEARCHDB_OAUTH_CLIENT_ID:-nbsearchdb_oauth_client_changeme}"
NBSEARCHDB_OAUTH_CLIENT_SECRET: "${NBSEARCHDB_OAUTH_CLIENT_SECRET:-nbsearchdb_oauth_secret_changeme}"
volumes:
- './config/oidc/jupyterhub_config.py:/jupyterhub_config.d/oidc.py:ro'
- './config/nbsearch/jupyterhub_config.py:/jupyterhub_config.d/solr.py:ro'