Разработана первая версия приложений
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
worker_processes auto;
|
||||
pid /tmp/nginx.pid;
|
||||
error_log /dev/stderr warn;
|
||||
|
||||
events {
|
||||
worker_connections 4096;
|
||||
}
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
default_type application/octet-stream;
|
||||
server_tokens off;
|
||||
charset utf-8;
|
||||
|
||||
map $http_upgrade $connection_upgrade {
|
||||
default upgrade;
|
||||
'' close;
|
||||
}
|
||||
map $http_x_request_id $edge_request_id {
|
||||
"~*^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$" $http_x_request_id;
|
||||
"~*^[0-9A-HJKMNP-TV-Z]{26}$" $http_x_request_id;
|
||||
default $request_id;
|
||||
}
|
||||
map $http_traceparent $trace_id {
|
||||
"~^[0-9a-f]{2}-(?<valid_trace_id>[0-9a-f]{32})-[0-9a-f]{16}-[0-9a-f]{2}$" $valid_trace_id;
|
||||
default "";
|
||||
}
|
||||
map $request_method $polling_key {
|
||||
GET $binary_remote_addr;
|
||||
default "";
|
||||
}
|
||||
|
||||
log_format json_combined escape=json
|
||||
'{"timestamp":"$time_iso8601","service.name":"nginx","request_id":"$edge_request_id",'
|
||||
'"trace_id":"$trace_id","remote_addr":"$remote_addr","host":"$host","method":"$request_method",'
|
||||
'"uri":"$uri","status":$status,"bytes":$body_bytes_sent,"duration":$request_time,'
|
||||
'"upstream_status":"$upstream_status","upstream_time":"$upstream_response_time",'
|
||||
'"cache":"$upstream_cache_status","tls":"$ssl_protocol","user_agent":"$http_user_agent"}';
|
||||
access_log /dev/stdout json_combined;
|
||||
|
||||
limit_req_status 429;
|
||||
limit_conn_status 429;
|
||||
limit_req_zone $binary_remote_addr zone=api:10m rate=${NGINX_RATE_LIMIT_API};
|
||||
limit_req_zone $binary_remote_addr zone=auth:10m rate=${NGINX_RATE_LIMIT_AUTH};
|
||||
limit_req_zone $binary_remote_addr zone=public:10m rate=${NGINX_RATE_LIMIT_PUBLIC};
|
||||
limit_req_zone $polling_key zone=polling:10m rate=${NGINX_RATE_LIMIT_POLLING};
|
||||
limit_req_zone $binary_remote_addr zone=downloads:10m rate=${NGINX_RATE_LIMIT_DOWNLOADS};
|
||||
limit_req_zone $binary_remote_addr zone=bitrix_callbacks:10m rate=${NGINX_RATE_LIMIT_BITRIX};
|
||||
limit_req_zone $binary_remote_addr zone=ws_connect:10m rate=${NGINX_RATE_LIMIT_WS};
|
||||
limit_conn_zone $binary_remote_addr zone=connections:10m;
|
||||
|
||||
proxy_cache_path /var/cache/nginx/public levels=1:2 keys_zone=public_cache:20m
|
||||
max_size=256m inactive=1h use_temp_path=off;
|
||||
client_max_body_size ${NGINX_CLIENT_MAX_BODY_SIZE};
|
||||
client_body_temp_path /tmp/client_body;
|
||||
proxy_temp_path /tmp/proxy;
|
||||
|
||||
upstream api_backend { server api-backend:8000; keepalive 32; }
|
||||
upstream keycloak_upstream { server keycloak:8080; keepalive 16; }
|
||||
upstream bitrix_local { server bitrix-local-app:8080; keepalive 16; }
|
||||
upstream bitrix_sync_upstream { server bitrix-sync:8080; keepalive 8; }
|
||||
upstream frontend_dev { server ${EXPO_DEV_SERVER_HOSTPORT}; keepalive 8; }
|
||||
|
||||
include /etc/nginx/generated/site.conf;
|
||||
}
|
||||
Reference in New Issue
Block a user