mirror of
https://github.com/ciur/papermerge.git
synced 2026-04-25 12:05:58 +03:00
[GH-ISSUE #244] Horror with Docker & Reverse Proxy because of all the paths #196
Labels
No labels
2.1
3.0
3.0.1
3.0.2
3.0.3
3.0.3
3.1
3.2
3.2
3.3
3.5
3.x
Fixed. Waiting for feedback.
Fixed. Waiting for feedback.
UX
Version 2.1 - alpha
XSS
announcement
beta
blocker
bug
cannot reproduce
confirmed
confirmed
critical
demo
dependencies
deployment
detchnical debt
discussion
docker
documentation
donations
duplicate
enhancement
feature request
frontend
fundraising
good first issue
good issue
help wanted
high
implemented
important
improvement
incomplete
invalid
investigation
kubernetes
low
low impact
medium
medium
medium impact
migration from 2.0
migration from 2.1
missing-language
missing-ocr-language
no-activity
note
ocr
outofscope
packaging
performance
popular request
pull-request
pypi
question
raspberry pi
roadmap
search
security
setup
status
task
technical debt
updates
user xp
version 1.4.0 - demo
will be implemented
will not be implemented
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/papermerge#196
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Baton4986 on GitHub (Dec 4, 2020).
Original GitHub issue: https://github.com/ciur/papermerge/issues/244
hey guys,
it's very hard to configure a reverse proxy with docker because nearly every function in papermerge has it's own path (/upload/, /static/, /nodes/ etc.). It's even harder if you are running other apps that shares a path with papermerge like /upload/.
My Apache Config looked like:
And some functions still doesn't work. Best solution would be a top-level path like /papermerge/ and then sub-paths for all other functions. This makes Reverse-Proxy configs very easy with 2 lines like this:
I have tested this with many other apps, some of them support Docker Environment Variables to configure this path.
regards
@whysthatso commented on GitHub (Dec 19, 2020):
i'm curious why you encounter these problems. are you trying to run an apache2 instance infront of the running container setup? or are you trying to replace the apache2 instances inside the docker-compose setup as it's being run as an application server via mod_wsgi-express?
in the latter case i don't know, in the former case i'm not sure why you would need all these routes?
tbh i don't know the apache setup, the corresponding nginx vhost for my setup looks like that:
@Baton4986 commented on GitHub (Dec 29, 2020):
This only happens if running reverse-proxy without using a subdomain (mydomain.com/papermerge/ instead of papermerge.mydomain.com)
@whysthatso commented on GitHub (Jan 1, 2021):
ah right, that makes sense.
to be honest, i've never really understood the idea of separating services by means of path rather than subdomain. i strictly follow the principle: one service = one subdomain, and i think that was the actual intention of the domain name structure; which by its virtue avoids complexities like these kind of routing issues. maybe a way to go after all?
i do understand that there are limitations in choice and amount of subdomains depending on the dns provider situation, maybe a good reason to switch :)
@Baton4986 commented on GitHub (Jan 20, 2021):
the main issue is that you will need a ssl-cert that is valid for every subdomain. using letsencrypt means you have to set an a-record for each subdomain and then issue a cert. i'm using univention corporate server with its built in letsencrypt-app and it's much more comfortable to setup a new service there with just a new apache config file than all the other steps needed for the way with subdomains. with a path it is also possible to deploy this as a docker based app with just a click in different systems like univention corporate server, nas-systems etc. because nothing outside the docker host has to be configured (like a-records or new certs). so i always prefer the path-based-way if possible :)
@whysthatso commented on GitHub (Jan 20, 2021):
i understand your use case, of course. just for sake of completeness:
and - of course - one avoids a bunch of "horrible" routing issues :D
but i do acknowledge that there are different scenarios.
@ciur commented on GitHub (Mar 8, 2021):
Is this ticket still relevant ? Can I close it ?
@Baton4986 commented on GitHub (Mar 15, 2021):
hi, as this is more a feature-request than an issue, you can close this. but still would be nice to have this option for deployment :)