r/minio-nginx: Reverse proxy for MinIO
The *minio-nginx* role configures nginx to proxy for MinIO. It uses the "subdomain" pattern, as described in [Configure NGINX Proxy for MinIO Server][0]; the S3 API and the console UI are accessible through different domain names. [0]: https://min.io/docs/minio/linux/integrations/setup-nginx-proxy-with-minio.htmlfrigate-exporter
parent
7ec7cad26a
commit
3c907d0a16
|
@ -0,0 +1,4 @@
|
||||||
|
- name: reload nginx
|
||||||
|
service:
|
||||||
|
name: nginx
|
||||||
|
state: reloaded
|
|
@ -0,0 +1,7 @@
|
||||||
|
dependencies:
|
||||||
|
- role: minio
|
||||||
|
tags:
|
||||||
|
- minio
|
||||||
|
- role: nginx
|
||||||
|
tags:
|
||||||
|
- nginx
|
|
@ -0,0 +1,37 @@
|
||||||
|
- name: ensure nginx is configured to proxy for minio
|
||||||
|
template:
|
||||||
|
src: minio.nginx.conf.j2
|
||||||
|
dest: /etc/nginx/default.d/minio.conf
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: u=rw,go=r
|
||||||
|
notify:
|
||||||
|
- reload nginx
|
||||||
|
tags:
|
||||||
|
- config
|
||||||
|
- nginx-config
|
||||||
|
- minio-nginx
|
||||||
|
- minio-backend
|
||||||
|
|
||||||
|
- name: ensure nginx is configured to proxy for minio console
|
||||||
|
template:
|
||||||
|
src: minio-console.nginx.conf.j2
|
||||||
|
dest: /etc/nginx/conf.d/minio-console.conf
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: u=rw,go=r
|
||||||
|
notify:
|
||||||
|
- reload nginx
|
||||||
|
tags:
|
||||||
|
- config
|
||||||
|
- nginx-config
|
||||||
|
- minio-nginx
|
||||||
|
- minio-console
|
||||||
|
|
||||||
|
- name: ensure selinux allows nginx to proxy
|
||||||
|
seboolean:
|
||||||
|
name: httpd_can_network_connect
|
||||||
|
persistent: true
|
||||||
|
state: true
|
||||||
|
tags:
|
||||||
|
- selinux
|
|
@ -0,0 +1,45 @@
|
||||||
|
server {
|
||||||
|
listen 443 ssl http2;
|
||||||
|
listen [::]:443 ssl http2;
|
||||||
|
server_name {{ minio_console_domain }};
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
|
||||||
|
ssl_certificate "{{ nginx_ssl_certificate }}";
|
||||||
|
ssl_certificate_key "{{ nginx_ssl_certificate_key }}";
|
||||||
|
{% if nginx_ssl_ca_certificate is defined %}
|
||||||
|
ssl_client_certificate "{{ nginx_ssl_ca_certificate }}";
|
||||||
|
{% endif %}
|
||||||
|
ssl_session_cache {{ nginx_ssl_session_cache }};
|
||||||
|
ssl_session_timeout {{ nginx_ssl_session_timeout }};
|
||||||
|
ssl_ciphers {{ nginx_ssl_ciphers|join(':') }};
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
|
||||||
|
client_max_body_size 0;
|
||||||
|
proxy_buffering off;
|
||||||
|
proxy_request_buffering off;
|
||||||
|
chunked_transfer_encoding off;
|
||||||
|
|
||||||
|
proxy_connect_timeout 300;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
|
||||||
|
real_ip_header X-Real-IP;
|
||||||
|
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection "upgrade";
|
||||||
|
|
||||||
|
proxy_pass http://127.0.0.1:{{ minio_console_port }};
|
||||||
|
}
|
||||||
|
|
||||||
|
error_page 404 /404.html;
|
||||||
|
location = /40x.html {}
|
||||||
|
|
||||||
|
error_page 500 502 503 504 /50x.html;
|
||||||
|
location = /50x.html {}
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
client_max_body_size 0;
|
||||||
|
proxy_buffering off;
|
||||||
|
proxy_request_buffering off;
|
||||||
|
chunked_transfer_encoding off;
|
||||||
|
|
||||||
|
proxy_connect_timeout 300;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
|
||||||
|
real_ip_header X-Real-IP;
|
||||||
|
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Connection "";
|
||||||
|
|
||||||
|
proxy_pass http://127.0.0.1:{{ minio_port }};
|
||||||
|
}
|
Loading…
Reference in New Issue