Hi,
I am trying to setup a new local (none cluster) galaxy installation based on v18.01 that should serve multiple users.
Reading the galaxy in production documentation https://docs.galaxyproject.org/en/latest/admin/production.html and https://docs.galaxyproject.org/en/master/admin/scaling.html I understood that
uWSGI for web serving with Mules as job handlers + nginx handling proxying of static context and file uploads is the best solution.
Sadly i am unable to get this setup to work.
galaxy and nginx start both fine, without any errors, but i cannot reach the galaxy web server (not on 8080 where galaxy should be served directly, nor on 80 through nginx)
In /var/log/nginx/error.log i can see the error message
*19 connect() to unix:///opt/galaxy/var/uwsgi.sock failed (2: No such file or directory) while connecting to upstream, client: 10.42.160.99, server: _, request: "GET / HTTP/1.1", upstream: "uwsgi://unix:///opt/galaxy/var/uwsgi.sock:", host ...
In /etc/nginx/sites-enabled/galaxy
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
# use a variable for convenience
set $galaxy_root /opt/galaxy;
# Enable HSTS
add_header Strict-Transport-Security "max-age=15552000; includeSubdomains";
# proxy all requests not matching other locations to uWSGI
location / {
uwsgi_pass unix:///opt/galaxy/var/uwsgi.sock;
uwsgi_param UWSGI_SCHEME $scheme;
include uwsgi_params;
}
# serve framework static content
location /static/style {
alias $galaxy_root/static/style/blue;
expires 24h;
}
location /static {
alias $galaxy_root/static;
expires 24h;
}
location /robots.txt {
alias $galaxy_root/static/robots.txt;
expires 24h;
}
location /favicon.ico {
alias $galaxy_root/static/favicon.ico;
expires 24h;
}
# serve visualization and interactive environment plugin static content
location ~ ^/plugins/(?<plug_type>.+?)/(?<vis_name>.+?)/static/(?<static_file>.*?)$ {
alias $galaxy_root/config/plugins/$plug_type/$vis_name/static/$static_file;
expires 24;
}
}
In galaxy/config/galaxy.yml i set
uwsgi:
http: :8080
socket: unix:///opt/galaxy/var/uwsgi.sock
the sock file does not exist. Who should create that? the nginx proxy, or galaxy? Any ideas why i cannot reach the webserver?