Server is Ubuntu 20.04
Joplin client 2.19
Joplin Server 2.28 beta (Docker image)
Nginx 1.21.1 (fresh install)
I am trying to run both discourse and a joplin server on my Ubuntu 20.04 instance but have had no luck with configuring the Nginx reverse proxy. I do have it working with the discourse instance and have installed certs from Let's Encrypt for both servers.
The names (example, domain is obviously not real) for the two servers are:
discourse.mydomain.net
joplin.mydomain.net
The current config that I have, which works for the discourse server is this:
server {
server_name discourse.mydomain.net; # ← change this
location / {
proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock:; # ←- volume: same like yml file
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/discourse.mydomain.net/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/discourse.mydomain.net/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = discourse.mydomain.net) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80; listen [::]:80;
server_name discourse.mydomain.net;
return 404; # managed by Certbot
}
When I try to add a server description all that seems to happen is that when I attempt to navigate to joplin.mydomain.net I get referred to https://discourse.mydomain.net, something is clearly wrong with my config but I have been unable to get it sorted.
This is the Joplin config:
server {
server_name joplin.mydomain.net;
location / {
proxy_pass http://127.0.0.1:22300;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Host $host;
client_max_body_size 400M;
}
ssl_certificate /etc/letsencrypt/live/joplin.mydomain.net/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/joplin.mydomain.net/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {
if ($host = joplin.mydomain.net) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80; listen [::]:80;
server_name joplin.mydomain.net;
return 404; # managed by Certbot
}
I am hoping someone in this group with more expertise than I have can help me get this going. I feel like it is a simple error but my lack of experience with configuring nginx makes it less obvious to me. Any assistance would be most welcome.
Thanks!