mirror of
https://github.com/bunkerity/bunkerized-nginx
synced 2023-12-13 21:30:18 +01:00
85 lines
3 KiB
Plaintext
85 lines
3 KiB
Plaintext
# /etc/nginx/stream.conf
|
|
|
|
# preread buffer size
|
|
# TODO : global setting STREAM_PREREAD_BUFFER_SIZE
|
|
preread_buffer_size 16k;
|
|
|
|
# preread timeout
|
|
# TODO : global setting STREAM_PREREAD_TIMEOUT
|
|
preread_timeout 30s;
|
|
|
|
# PROXY protocol timeout
|
|
# TODO : global setting STREAM_PROXY_PROTOCOL_TIMEOUT
|
|
proxy_protocol_timeout 30s;
|
|
|
|
# resolvers to use
|
|
resolver {{ DNS_RESOLVERS }} {% if USE_IPV6 == "no" %}ipv6=off{% endif %};
|
|
|
|
# resolver timeout
|
|
# TODO : global setting STREAM_RESOLVER_TIMEOUT
|
|
resolver_timeout 30s;
|
|
|
|
# remove 200ms delay
|
|
tcp_nodelay on;
|
|
|
|
# lua path and dicts
|
|
lua_package_path "/usr/share/bunkerweb/lua/?.lua;/usr/share/bunkerweb/core/?.lua;/etc/bunkerweb/plugins/?.lua;/usr/share/bunkerweb/deps/lib/lua/?.lua;;";
|
|
lua_package_cpath "/usr/share/bunkerweb/deps/lib/?.so;/usr/share/bunkerweb/deps/lib/lua/?.so;;";
|
|
lua_ssl_trusted_certificate "/usr/share/bunkerweb/misc/root-ca.pem";
|
|
lua_ssl_verify_depth 2;
|
|
{% if has_variable(all, "SERVER_TYPE", "stream") +%}
|
|
lua_shared_dict datastore_stream {{ DATASTORE_MEMORY_SIZE }};
|
|
lua_shared_dict cachestore_stream {{ CACHESTORE_MEMORY_SIZE }};
|
|
lua_shared_dict cachestore_ipc_stream {{ CACHESTORE_IPC_MEMORY_SIZE }};
|
|
lua_shared_dict cachestore_miss_stream {{ CACHESTORE_MISS_MEMORY_SIZE }};
|
|
lua_shared_dict cachestore_locks_stream {{ CACHESTORE_LOCKS_MEMORY_SIZE }};
|
|
# only show LUA socket errors at info/debug
|
|
{% if LOG_LEVEL != "info" and LOG_LEVEL != "debug" %}
|
|
lua_socket_log_errors off;
|
|
{% endif %}
|
|
|
|
# LUA init block
|
|
include /etc/nginx/init-stream-lua.conf;
|
|
|
|
# TODO add default stream server if that makes any sense ?
|
|
|
|
# server config(s)
|
|
{% if MULTISITE == "yes" and SERVER_NAME != "" %}
|
|
{% set map_servers = {} %}
|
|
{% for server_name in SERVER_NAME.split(" ") %}
|
|
{% if server_name + "_SERVER_NAME" in all and all[server_name + "_SERVER_TYPE"] == "stream" %}
|
|
{% set x = map_servers.update({server_name : all[server_name + "_SERVER_NAME"].split(" ")}) %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% for server_name in SERVER_NAME.split(" ") %}
|
|
{% if not server_name in map_servers %}
|
|
{% set found = {"res": false} %}
|
|
{% for first_server, servers in map_servers.items() %}
|
|
{% if server_name in servers %}
|
|
{% set x = found.update({"res" : true}) %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% if not found["res"] and all[server_name + "_SERVER_TYPE"] == "stream" %}
|
|
{% set x = map_servers.update({server_name : [server_name]}) %}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% for first_server in map_servers +%}
|
|
include /etc/nginx/{{ first_server }}/server-stream.conf;
|
|
{% if all[first_server + "_USE_REVERSE_PROXY"] == "yes" and all[first_server + "_REVERSE_PROXY_HOST"] != "" +%}
|
|
upstream {{ first_server }} {
|
|
server {{ all[first_server + "_REVERSE_PROXY_HOST"] }};
|
|
}
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% elif MULTISITE == "no" and SERVER_NAME != "" and SERVER_TYPE == "stream" +%}
|
|
include /etc/nginx/server-stream.conf;
|
|
{% if USE_REVERSE_PROXY == "yes" and REVERSE_PROXY_HOST != "" +%}
|
|
upstream {{ SERVER_NAME.split(" ")[0] }} {
|
|
server {{ REVERSE_PROXY_HOST }};
|
|
}
|
|
{% endif %}
|
|
{% endif %}
|
|
|
|
{% endif %}
|