Skip to content

Additional configuration on nginx is needed to connect with recent version of zeppelin #2

Description

@snowindy

Hi RJ!

Firstly, thank you for the nice approach to securing Zeppelin via nginx @ Docker. Now not only my Zeppelin is secured by I also tried Docker on a real project and it's awesome!

Some notes:

  1. It looks like most recent Zeppelin release only needs one port open to operate. In case of this example - 8080
  2. I only used nginx_docker from your project to connect it to Zeppelin running on host machine. For that option --net="host" is very useful. It's just FYI that may be added to README.
  3. With the configuration you provided in nginx.conf Zeppelin UI got loaded but it failed to connect via websocket. Here's update that works with the most recent Zeppelin by today (0.6.0):
user nginx;
daemon off;
worker_processes 1;
error_log  /var/log/nginx/error.log;
pid        /run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;

    keepalive_timeout  65;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;

    server {
        listen 8080;
        server_name  localhost;

        # http://nginx.org/en/docs/http/websocket.html
        location /ws {
            proxy_pass http://localhost:8208/ws;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "upgrade";
            auth_basic "Restricted";
            auth_basic_user_file /etc/nginx/.htpasswd;
        }

        location / {
            auth_basic "Restricted";
            auth_basic_user_file /etc/nginx/.htpasswd;
            proxy_pass http://localhost:8208;
        }
    }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions