forked from nbgallery/nbgallery
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
115 lines (106 loc) · 3.4 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
version: "3"
services:
########################################
# Third-Party Containers
########################################
mysql:
image: mysql:5.7.21
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: xyz
MYSQL_DATABASE: gallery
volumes:
- "${PWD}/docker/config/mysql:/etc/mysql/mysql.conf.d"
- "${PWD}/docker/data/mysql:/var/lib/mysql"
healthcheck:
test: ["CMD", "mysqladmin" ,"ping", "--host", "localhost", "-u", "root", "-pxyz"]
timeout: 20s
retries: 10
solr:
image: nbgallery/solr
ports:
- "8983:8983"
volumes:
- "${PWD}/docker/data/solr:/var/solr/data/"
# If you need a "mail server" for testing:
# Uncomment the below container
# Uncomment the links/depends in nbgallery
# Set EMAIL_SERVER to 'smtp'
# Set EMAIL_PORT to '5025'
# visit http://localhost:5080/ to see all emails that were sent by NBGallery during that run
# Does not preserve data
#smtp:
# image: gessnerfl/fake-smtp-server:latest
# ports:
# - "5080:5080"
########################################
# Notebook Gallery
########################################
nbgallery:
image: nbgallery/nbgallery
ports:
- "3000:3000"
volumes:
- "${PWD}/docker/log/nbgallery:/usr/src/nbgallery/log"
- "${PWD}/docker/data/nbgallery:/usr/src/nbgallery/data"
depends_on:
- "mysql"
- "solr"
#- "smtp"
links:
- "mysql"
- "solr"
#- "smtp"
environment:
GALLERY__MYSQL__HOST: mysql
GALLERY__MYSQL__PORT: 3306
GALLERY__MYSQL__USERNAME: root
GALLERY__MYSQL__PASSWORD: xyz
GALLERY__MYSQL__DATABASE: gallery
GALLERY__SOLR__HOSTNAME: solr
GALLERY__SOLR__PORT: 8983
GALLERY__DIRECTORIES__DATA: /usr/src/nbgallery/data
GALLERY__DIRECTORIES__CACHE: /usr/src/nbgallery/data/cache
GALLERY__DIRECTORIES__CHANGE_REQUESTS: /usr/src/nbgallery/data/change_requests
GALLERY__DIRECTORIES__STAGING: /usr/src/nbgallery/data/staging
SECRET_KEY_BASE: ${SECRET_KEY_BASE}
NBGALLERY_ADMIN_USER: ${NBGALLERY_ADMIN_USER}
NBGALLERY_ADMIN_EMAIL: ${NBGALLERY_ADMIN_EMAIL}
NBGALLERY_ADMIN_PASSWORD: ${NBGALLERY_ADMIN_PASSWORD}
EMAIL_USERNAME: ${EMAIL_USERNAME}
EMAIL_PASSWORD: ${EMAIL_PASSWORD}
EMAIL_DOMAIN: ${EMAIL_DOMAIN}
EMAIL_ADDRESS: ${EMAIL_ADDRESS}
EMAIL_DEFAULT_URL_OPTIONS_HOST: ${EMAIL_DEFAULT_URL_OPTIONS_HOST}
EMAIL_SERVER: ${EMAIL_SERVER}
EMAIL_PORT: ${EMAIL_PORT}
GITHUB_ID: ${GITHUB_ID}
GITHUB_SECRET: ${GITHUB_SECRET}
GITLAB_ID: ${GITLAB_ID}
GITLAB_SECRET: ${GITLAB_SECRET}
GITLAB_URL: ${GITLAB_URL}
GOOGLE_ID: ${GOOGLE_ID}
GOOGLE_SECRET: ${GOOGLE_SECRET}
FACEBOOK_ID: ${FACEBOOK_ID}
FACEBOOK_SECRET: ${FACEBOOK_SECRET}
AZURE_ID : ${AZURE_ID}
AZURE_SECRET : ${AZURE_SECRET}
AZURE_TENANT : ${AZURE_TENANT}
########################################
# Testing (should be commented out normally)
########################################
# Test container to check remote mysql connections internal to the composition network
# Connect with `docker-compose exec mysql_test /bin/bash`
# mysql_test:
# image: mysql:5.7.21
# environment:
# MYSQL_ROOT_PASSWORD: test
# depends_on:
# - "mysql"
# - "solr"
# - "nbgallery"
# links:
# - "mysql"
# - "solr"
# - "nbgallery"