2 # Copyright (C) The Arvados Authors. All rights reserved.
4 # SPDX-License-Identifier: AGPL-3.0
6 {%- import_yaml "ssl_key_encrypted.sls" as ssl_key_encrypted_pillar %}
15 upstream websocket_upstream:
16 - server: 'localhost:8005 fail_timeout=10s'
21 arvados_websocket_default.conf:
26 - server_name: ws.__DOMAIN__
30 - return: '301 https://$host$request_uri'
32 arvados_websocket_ssl.conf:
39 - server_name: ws.__DOMAIN__
41 - __CONTROLLER_EXT_SSL_PORT__ http2 ssl
42 - index: index.html index.htm
44 - proxy_pass: 'http://websocket_upstream'
45 - proxy_read_timeout: 600
46 - proxy_connect_timeout: 90
47 - proxy_redirect: 'off'
48 - proxy_set_header: 'Host $host'
49 - proxy_set_header: 'X-Real-IP $remote_addr'
50 - proxy_set_header: 'Upgrade $http_upgrade'
51 - proxy_set_header: 'Connection "upgrade"'
52 - proxy_set_header: 'X-Forwarded-For $proxy_add_x_forwarded_for'
53 - proxy_buffering: 'off'
54 - client_body_buffer_size: 64M
55 - client_max_body_size: 64M
56 - proxy_http_version: '1.1'
57 - proxy_request_buffering: 'off'
58 - include: snippets/ssl_hardening_default.conf
59 - ssl_certificate: __CERT_PEM__
60 - ssl_certificate_key: __CERT_KEY__
61 {%- if ssl_key_encrypted_pillar.ssl_key_encrypted.enabled %}
62 - ssl_password_file: {{ '/run/arvados/' | path_join(ssl_key_encrypted_pillar.ssl_key_encrypted.privkey_password_filename) }}
64 - access_log: /var/log/nginx/ws.__DOMAIN__.access.log combined
65 - error_log: /var/log/nginx/ws.__DOMAIN__.error.log