ansible-role-shinyproxy/templates/shinyproxy-2-conf.yml.j2

102 lines
3.4 KiB
Django/Jinja

proxy:
title: {{ shinyproxy_app_title }}
logo-url: {{ shinyproxy_logo_url }}
landing-page: {{ shinyproxy_landing_page }}
heartbeat-rate: 10000
heartbeat-timeout: 60000
container-wait-time: {{ shinyproxy_container_wait_time }}
{% if shinyproxy_container_backend == 'docker-swarm' %}
bind-address: 0.0.0.0
{% else %}
bind-address: {{ shinyproxy_bind_address }}
{% endif %}
port: {{ shinyproxy_http_port }}
hide-navbar: {{ shinyproxy_hide_navbar }}
{% if shinyproxy_custom_template %}
template-path: {{ shinyproxy_template_path }}
{% endif %}
authentication: {{ shinyproxy_authentication }}
admin-groups: {{ shinyproxy_admin_group }}
container-backend: {{ shinyproxy_container_backend }}
{% if shinyproxy_ldap_enabled %}
# LDAP configuration
ldap:
url: {{ shinyproxy_ldap_server }}
{% if shinyproxy_ldap_user_dn_enabled %}
user-dn-pattern: {{ shinyproxy_ldap_user_dn_pattern }}
{% endif %}
{% if shinyproxy_ldap_user_search_base_enabled %}
user-search-base: {{ shinyproxy_ldap_user_search_base }}
{% endif %}
{% if shinyproxy_ldap_user_search_filter_enabled %}
user-search-filter: {{ shinyproxy_ldap_user_search_filter }}
{% endif %}
group-search-base: {{ shinyproxy_ldap_group_search_base }}
group-search-filter: {{ shinyproxy_ldap_group_search_filter }}
manager-dn: {{ shinyproxy_ldap_admin }}
manager-password: {{ shinyproxy_ldap_admin_pwd }}
{% endif %}
{% if shinyproxy_container_backend == 'docker' or shinyproxy_container_backend == 'docker-swarm' %}
docker:
container-memory-request: {{ shinyproxy_docker_memory_request }}
container-memory-limit: {{ shinyproxy_docker_memory_limit }}
container-cpu-limit: {{ shinyproxy_docker_cpu_limit }}
{% if not shinyproxy_as_docker_service %}
cert-path: {{ shinyproxy_docker_certs_dir }}
url: {{ shinyproxy_docker_url }}
container-protocol: {{ shinyproxy_docker_protocol }}
port-range-start: {{ shinyproxy_docker_port_range_start }}
internal-networking: {{ shinyproxy_docker_internal_networking }}
{% else %}
internal-networking: true
{% endif %}
{% endif %}
specs:
{% if shinyproxy_default_apps %}
- id: 01_hello
display-name: Hello Application
description: Application which demonstrates the basics of a Shiny app
container-cmd: ["R", "-e shinyproxy::run_01_hello()"]
container-image: openanalytics/shinyproxy-demo
- id: 06_tabsets
docker-cmd: ["R", "-e shinyproxy::run_06_tabsets()"]
container-image: openanalytics/shinyproxy-demo
{% endif %}
{% if shinyproxy_apps is defined %}
{% for app in shinyproxy_apps %}
- id: {{ app.name }}
display-name: {{ app.display_name }}
description: {{ app.description }}
container-cmd: ["R", "-e {{ app.cmd }}"]
container-image: {{ app.docker_image }}
container-memory: {{ app.docker_memory | default('2g') }}
{% if shinyproxy_as_docker_service %}
{% if shinyproxy_container_backend == 'docker-swarm' %}
container-network: {{ shinyproxy_as_docker_service_name }}_{{ shinyproxy_docker_network }}
{% else %}
container-network: {{ shinyproxy_docker_network }}
{% endif %}
{% endif %}
{% if app.groups is defined %}
groups: {{ app.groups }}
{% endif %}
{% endfor %}
{% endif %}
security:
basic:
enabled: {{ shinyproxy_basic_auth }}
logging:
file: {{ shinyproxy_log_dir }}/shinyproxy.log
#max-size: {{ shinyproxy_max_log_size }}
level:
com.spotify.docker: {{ shinyproxy_docker_loglevel }}