Matrix Docker Ansible eploy
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.
 
 

127 líneas
4.4 KiB

  1. server {
  2. listen {{ 8080 if matrix_nginx_proxy_enabled else 80 }};
  3. server_name {{ matrix_nginx_proxy_proxy_matrix_hostname }};
  4. server_tokens off;
  5. location /.well-known/acme-challenge {
  6. {% if matrix_nginx_proxy_enabled %}
  7. {# Use the embedded DNS resolver in Docker containers to discover the service #}
  8. resolver 127.0.0.11 valid=5s;
  9. set $backend "matrix-certbot:8080";
  10. proxy_pass http://$backend;
  11. {% else %}
  12. {# Generic configuration for use outside of our container setup #}
  13. proxy_pass http://localhost:{{ matrix_ssl_lets_encrypt_certbot_standalone_http_port }};
  14. {% endif %}
  15. }
  16. location / {
  17. return 301 https://$http_host$request_uri;
  18. }
  19. }
  20. server {
  21. listen {{ 8443 if matrix_nginx_proxy_enabled else 443 }} ssl http2;
  22. listen [::]:{{ 8443 if matrix_nginx_proxy_enabled else 443 }} ssl http2;
  23. server_name {{ matrix_nginx_proxy_proxy_matrix_hostname }};
  24. server_tokens off;
  25. root /dev/null;
  26. gzip on;
  27. gzip_types text/plain application/json;
  28. ssl_certificate {{ matrix_ssl_config_dir_path }}/live/{{ matrix_nginx_proxy_proxy_matrix_hostname }}/fullchain.pem;
  29. ssl_certificate_key {{ matrix_ssl_config_dir_path }}/live/{{ matrix_nginx_proxy_proxy_matrix_hostname }}/privkey.pem;
  30. ssl_protocols {{ matrix_nginx_proxy_ssl_protocols }};
  31. ssl_prefer_server_ciphers on;
  32. ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
  33. location /.well-known/matrix/client {
  34. root {{ matrix_static_files_base_path }};
  35. expires 1m;
  36. default_type application/json;
  37. add_header Access-Control-Allow-Origin *;
  38. }
  39. {% if matrix_nginx_proxy_proxy_matrix_corporal_api_enabled %}
  40. location /_matrix/corporal {
  41. {% if matrix_nginx_proxy_enabled %}
  42. {# Use the embedded DNS resolver in Docker containers to discover the service #}
  43. resolver 127.0.0.11 valid=5s;
  44. set $backend "{{ matrix_nginx_proxy_proxy_matrix_corporal_api_addr_with_container }}";
  45. proxy_pass http://$backend;
  46. {% else %}
  47. {# Generic configuration for use outside of our container setup #}
  48. proxy_pass http://{{ matrix_nginx_proxy_proxy_matrix_corporal_api_addr_sans_container }};
  49. {% endif %}
  50. proxy_set_header Host $host;
  51. proxy_set_header X-Forwarded-For $remote_addr;
  52. }
  53. {% endif %}
  54. {% if matrix_nginx_proxy_proxy_matrix_identity_api_enabled %}
  55. location /_matrix/identity {
  56. {% if matrix_nginx_proxy_enabled %}
  57. {# Use the embedded DNS resolver in Docker containers to discover the service #}
  58. resolver 127.0.0.11 valid=5s;
  59. set $backend "{{ matrix_nginx_proxy_proxy_matrix_identity_api_addr_with_container }}";
  60. proxy_pass http://$backend;
  61. {% else %}
  62. {# Generic configuration for use outside of our container setup #}
  63. proxy_pass http://{{ matrix_nginx_proxy_proxy_matrix_identity_api_addr_sans_container }};
  64. {% endif %}
  65. proxy_set_header Host $host;
  66. proxy_set_header X-Forwarded-For $remote_addr;
  67. }
  68. {% endif %}
  69. {% if matrix_nginx_proxy_proxy_matrix_user_directory_search_enabled %}
  70. location /_matrix/client/r0/user_directory/search {
  71. {% if matrix_nginx_proxy_enabled %}
  72. {# Use the embedded DNS resolver in Docker containers to discover the service #}
  73. resolver 127.0.0.11 valid=5s;
  74. set $backend "{{ matrix_nginx_proxy_proxy_matrix_user_directory_search_addr_with_container }}";
  75. proxy_pass http://$backend;
  76. {% else %}
  77. {# Generic configuration for use outside of our container setup #}
  78. proxy_pass http://{{ matrix_nginx_proxy_proxy_matrix_user_directory_search_addr_sans_container }};
  79. {% endif %}
  80. proxy_set_header Host $host;
  81. proxy_set_header X-Forwarded-For $remote_addr;
  82. }
  83. {% endif %}
  84. {% for configuration_block in matrix_nginx_proxy_proxy_matrix_additional_server_configuration_blocks %}
  85. {{- configuration_block }}
  86. {% endfor %}
  87. location /_matrix {
  88. {% if matrix_nginx_proxy_enabled %}
  89. {# Use the embedded DNS resolver in Docker containers to discover the service #}
  90. resolver 127.0.0.11 valid=5s;
  91. set $backend "{{ matrix_nginx_proxy_proxy_matrix_client_api_addr_with_container }}";
  92. proxy_pass http://$backend;
  93. {% else %}
  94. {# Generic configuration for use outside of our container setup #}
  95. proxy_pass http://{{ matrix_nginx_proxy_proxy_matrix_client_api_addr_sans_container }};
  96. {% endif %}
  97. proxy_set_header Host $host;
  98. proxy_set_header X-Forwarded-For $remote_addr;
  99. client_body_buffer_size 25M;
  100. client_max_body_size {{ matrix_nginx_proxy_proxy_matrix_client_api_client_max_body_size_mb }}M;
  101. proxy_max_temp_file_size 0;
  102. }
  103. location / {
  104. rewrite ^/$ /_matrix/static/ last;
  105. }
  106. }