Skip to content

Commit ce3be8e

Browse files
committed
Add haproxy lb comments to docker-compose.yml
1 parent 5b98558 commit ce3be8e

File tree

1 file changed

+15
-13
lines changed

1 file changed

+15
-13
lines changed

docker-compose.yml

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
# Assumes UI repo is cloned in parent directory
21
version: '2'
32
services:
3+
44
api:
55
build: .
66
ports:
@@ -21,11 +21,11 @@ services:
2121
CASSANDRA_CLUSTER_PORT: 9042
2222
HMDA_IS_DEMO: 'true'
2323
# lb settings
24-
EXCLUDE_PORTS: '8080, 8081'
24+
EXCLUDE_PORTS: '8080, 8081' # 8080 proxied through auth_proxy; 8081 (Admin API) doesn't need proxy
2525
VIRTUAL_HOST: 'https://*:4443/public/*'
26-
VIRTUAL_HOST_WEIGHT: 1
26+
VIRTUAL_HOST_WEIGHT: 1 # avoids conflicts with auth_proxy
27+
# add simple CORS support; proxypass /public/ to Public API
2728
EXTRA_SETTINGS: 'rspadd Access-Control-Allow-Origin:\ *, reqirep "^([^ :]*)\ /public//?(.*)" "\1\ /\2"'
28-
2929
restart: always
3030

3131
ui:
@@ -45,8 +45,8 @@ services:
4545
KEYCLOAK_URL: https://192.168.99.100:8443/auth/realms/hmda
4646
# lb settings
4747
VIRTUAL_HOST: 'http://*:80/*, https://*:443/*'
48-
EXCLUDE_PORTS: '443'
49-
FORCE_SSL: 'true'
48+
EXCLUDE_PORTS: '443' # use lb's ssl instead of ui's nginx
49+
FORCE_SSL: 'true' # redirect 80 to 443
5050

5151
keycloak:
5252
build: ../hmda-platform-auth/keycloak
@@ -58,14 +58,15 @@ services:
5858
POSTGRES_PASSWORD: password
5959
POSTGRES_SERVER: keycloak_db
6060
POSTGRES_PORT: 5432
61+
PROXY_HTTPS_PORT: 8443
6162
SMTP_SERVER: mail_dev
6263
SMTP_PORT: 25
6364
INSTITUTION_SEARCH_URI: 'https://192.168.99.100:4443/public/'
6465
INSTITUTION_SEARCH_VALIDATE_SSL: "OFF"
6566
HOME_PAGE_URI: 'https://192.168.99.100'
6667
REDIRECT_URIS: '[ "https://192.168.99.100", "https://192.168.99.100/oidc-callback", "https://192.168.99.100/silent_renew.html" ]'
6768
SUPPORT_EMAIL: '[email protected]'
68-
# HA Proxy
69+
# lb settings
6970
VIRTUAL_HOST: 'https://*:8443/*'
7071
VIRTUAL_HOST_WEIGHT: 0
7172
volumes:
@@ -111,7 +112,8 @@ services:
111112
environment:
112113
# lb settings
113114
VIRTUAL_HOST: 'https://*:8443/mail/*'
114-
EXCLUDE_PORTS: '25'
115+
VIRTUAL_HOST_WEIGHT: 1
116+
EXCLUDE_PORTS: '25' # don't proxy SMTP port
115117
EXTRA_SETTINGS: 'reqirep "^([^ :]*)\ /mail//?(.*)" "\1\ /\2"'
116118

117119
query_db:
@@ -142,18 +144,18 @@ services:
142144
volumes:
143145
- /var/run/docker.sock:/var/run/docker.sock
144146
ports:
145-
- '80:80'
146-
- '443:443'
147-
- '8443:8443'
148-
- '4443:4443'
147+
- '80:80' # ui http - redirects to https (443)
148+
- '443:443' # ui https
149+
- '8443:8443' # auth https - keycloak and maildev
150+
- '4443:4443' # api https - auth_proxy and api's public api
149151
links:
150152
- api
151153
- auth_proxy
152154
- keycloak
153155
- mail_dev
154156
- ui
155157
environment:
156-
EXTRA_GLOBAL_SETTINGS: 'debug'
158+
# EXTRA_GLOBAL_SETTINGS: 'debug' # enable for request logging
157159
# Default SSL cert for ALL services served by lb
158160
# SEE: https://github.com/docker/dockercloud-haproxy#pem-files
159161
DEFAULT_SSL_CERT: '-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEA0Mal2qHA1EXk0w4Lq7K7GHT/snGZrT/bIzGmZtQGzccb6OrO\nyBs0NI+bWKuZTStrewFYPKQ/r5N2twqoWAYHiTKcp9ykWE6KKcO3NjAv0bqsZXwi\nV7BcDstlYSjE5f+4i6uwUbQKG1huSwp22QaDXJx2MWS8towihZ03cCMq7DAJLDWP\n474GpsrxVKscfZMgcUUEly7jY+y4/ot/RJE1/cwNAd7R2mUaiE8kZ3KO804UplJB\njUGzZp5zQEeqgO27esD9teYnQRLVwWbB5BkY38Uh9DOK8zUUJK3uJvAC0lUsftus\n8sloYQky2v5u8xpJQMVYNcEctp1CTh4FllRy1wIDAQABAoIBAQDCGY2lAHGIaRre\n5dYP4XF0wYHgYyFfI1kXFVgBjeptckoOeA+blz8oBsOE4rT6O/4HNC7W4lWbZNwg\nPTZZ7/EdqwJeRhI9T3fAcIdrR82NjaIuEATVxc8wqgUtGXxF4UOwBwU8UMh8t/CC\nr83i491JQuXX8jJI/WwzEQGzrd6AClLdurNP9NqRVmShbW5cNnTXi0vTZpeEQXPy\n17w7GHHCGkKVDfzdCd3lnj47thg1LdjYpNyMYMUQ0NxdUGqEhP3d355gNVdW4q7g\nzneh29hXtYzxAgovpvQ3PRkfiPKo4GbW3UUIZmKjHjWqNYtE/Kj2daqsqt+xL9Dq\nLiLpmJLRAoGBAOzD6F7MNpJQZSDkN2iUruk38kBM0GJyJp2GIB8QDtcYZzq9zAXU\n7UI+dnfRus8suZTiGQ6fx6gsVvi1mnFvYonvbe64U5iA/s/DUEo+REsLFTbCw/5X\nXKqKiHJYt6WnjbjDY23xsjT2dt+XsNlWqsiawGhQYpnNgs9D5LJ5PKilAoGBAOG8\nov/sNeRTGYOrX8equNWltKpUmA11D0Fb0RDAHYNlkw1gR7p0YJ1kteCq13zoMTMg\n1+2fR83clcpcpCpESsHOBZs0g1dujSemJvgc3x9Gf7/fc3w7gfIADbOMiG+lbzqx\n+299z8l9NMDr4XSpDIOvi7WcW07roFXW19GumljLAoGAS6+cmqFBWKhmi4sowz+0\nYk1GHZPwkWfYPEbiAcwKUmw0o6yEieC1L5X0HP1ocE3lzVgxlmExW+tAqiSziEuI\n/nsRc1xtLLUfv566DeG1xx912pmMOcQHlWTPlW4S1tunDEc5g63dv9yBx5wgJnn0\nAkil9TKtMmllxYf4laz33RkCgYBbeFCkW1bLGlEwZXT+N1OGXwsCKh0i9tgjp8zj\neLV81N/tf6IRD69Gl9SLIS8IUh39lcVpaC10YXng8gEjj2Crf4wOBA1klEtmUZFg\n4HIY/jwtx6HIKWTSZusmYj+23dZgdlZoKxbTkoSZ1/sXhpink66M/LqTFC94GQKC\n2Ll6WQKBgQDXnrheOts4P8+1n3MM2flHPe2oY5AqjpgFngSLqqz+xHRtYsu+nNjs\ntDVRhdxwvgsLJG9ELFXEO+BVrIzAGL9zbJq+G/S3XT5WOUmYn5yfNveyX1orfTk/\n4zH+IE2LHuXeKcbgM7SPuYYSe13AXvAjP0WiQQABLpJUg1xR7+FUpw==\n-----END RSA PRIVATE KEY-----\n-----BEGIN CERTIFICATE-----\nMIIDXjCCAkagAwIBAgIJAMIn/5yNe6lzMA0GCSqGSIb3DQEBBQUAMCgxCjAIBgNV\nBAMUASoxDTALBgNVBAoTBENGUEIxCzAJBgNVBAYTAlVTMB4XDTE3MDcxMDIxMjYx\nM1oXDTIwMDYyNDIxMjYxM1owKDEKMAgGA1UEAxQBKjENMAsGA1UEChMEQ0ZQQjEL\nMAkGA1UEBhMCVVMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDQxqXa\nocDUReTTDgursrsYdP+ycZmtP9sjMaZm1AbNxxvo6s7IGzQ0j5tYq5lNK2t7AVg8\npD+vk3a3CqhYBgeJMpyn3KRYToopw7c2MC/RuqxlfCJXsFwOy2VhKMTl/7iLq7BR\ntAobWG5LCnbZBoNcnHYxZLy2jCKFnTdwIyrsMAksNY/jvgamyvFUqxx9kyBxRQSX\nLuNj7Lj+i39EkTX9zA0B3tHaZRqITyRnco7zThSmUkGNQbNmnnNAR6qA7bt6wP21\n5idBEtXBZsHkGRjfxSH0M4rzNRQkre4m8ALSVSx+26zyyWhhCTLa/m7zGklAxVg1\nwRy2nUJOHgWWVHLXAgMBAAGjgYowgYcwHQYDVR0OBBYEFLL5wreeYENfq9VPn2XQ\np2BNDu7XMFgGA1UdIwRRME+AFLL5wreeYENfq9VPn2XQp2BNDu7XoSykKjAoMQow\nCAYDVQQDFAEqMQ0wCwYDVQQKEwRDRlBCMQswCQYDVQQGEwJVU4IJAMIn/5yNe6lz\nMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAGPxIPQRh6nWbZZcKxij\ndnqmam8j97N1r53LbAT4YtEOrHIhAtVImIMqUEc2wrr+UsrVCTf2N8V7EiFiWyJS\nFkQSmPUyrZyMX/vptwIXQj9nhMl8acT2rxOuCj2ughiWdhXBNiR5pknmsPFo36TR\nhtUFLphbHU9g9eCINUuQYlBirvssCXhc+lE9VVHC5tGpjj3XyfapeDhWLDqd8ovY\n9wCXceWH3X7I0uVSRXAOWvJ9s3b3USikoLX6MpX/yntY7vMULbZhd8jd1Mv9tT/r\nMuFEdymyyoNAYVeuhjPeZF4f9WFEgDtHOf5L5F5pmu3E4JZwWKj5q5W8EInseOgG\nwRU=\n-----END CERTIFICATE-----\n'

0 commit comments

Comments
 (0)