Skip to content

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Thanks for papermerge, but why its so hard to install?? #127

Closed
kolossboss opened this issue Mar 11, 2023 · 8 comments
Closed

Thanks for papermerge, but why its so hard to install?? #127

kolossboss opened this issue Mar 11, 2023 · 8 comments
Assignees
Labels
question Further information is requested

Comments

@kolossboss
Copy link

Hi,

First of all, thanks for this amazing product!! And the Documentation is also great.
I'm running Papermerge for a few month with the Image from "LinuxServer.io" release group. It was really easy to install and runs perfect. But the last working release has a few annoying bugs and the Image is not updated. (Its deprecated)

So I came here for the official image.
But I have a very hard time to set this up.
I tried via Docker Compose and with Portainer and repo.

The main Issue is, I always get the "404 not found" Error when accessing the WebUI (same as this Issue).
Its think because of that "HOSTNAME" or "USE_HOSTNAME" variable.
When I use the Domain Name I get this 404 Error. When Using the IP-Adress of the Host, I get the Login UI, but I also get this Syntax Error....

I have given up..

I don't know if I'm just stupid, but I also run over 20 other Docker Containers (not all from LinuxServer) with great success.
I'm not that deep into "creating Containers" but why is the Image from LinuxServer so simple and easy to use and also possible with one Image, and this official image gives me a headache.

I will stay a little longer on the LinuxServer image, and hope for a fix or anything. I'm not sure.

Best regards

Simon

@ciur
Copy link
Member

ciur commented Mar 12, 2023

@kolossboss, thanks for opening this ticket.

Indeed, the latest release 2.1.x is a pain in the ass to install. One of difficulties is the fact that frontend and backend are separate applications and in order to have basic backend + frontend you need to have those two docker containers plus some nginx/traefik in between.
Now, the idea of having backend and frontend as separate apps, is very cool, modern and helps me to have a clean and easy to maintain code (separation of concerns etc).
However, as you, and many others noted - it is a pain to configure.

Long story short, yesterday, i've decided to change that, in other words to make "one docker image for both backend and frontend", similar to what it used to be for 2.0.x (and what linuxserver.io image offers for 2.0.x).
The end result of this is that instead of 3 docker images to run basic app, you will need just one.

Actually you can already try that:

docker run -p 9090:8000   -e PAPERMERGE__MAIN__SECRET_KEY=abc \              
    -e DJANGO_SUPERUSER_PASSWORD=123 \
    papermerge/papermerge:2.1.8.dev8

then just point you browser to http://localhost:9090, username=admin, password=123, and you will see (and can use) both the UI and REST API!

Note that it is development image 2.1.8.dev8, i.e. not yet officially released, it is only for me to play around (still it is available on docker hub: https://hub.docker.com/r/papermerge/papermerge/tags).

Here is the official ticket tracking the progress on this problem: ciur/papermerge#537
I need max a week or so to get it done (+ update docs etc).

Btw, there is yet another, less obvious, but important difference between 2.0.x (provided by LinuxServer) and 2.1.x.
2.0.x - used postgresql built int search engine for searches.
2.1.x - uses xapian as built in search engine, but the recommendation is to use elasticsearch (or solr) instead.
This feat adds complexity indeed, but I think it is worth it, as in long term I will be able to fine tune the searching part so that
search results (one of the major points of Papermerge) will be more to the point.

Last but not least, is the worker, which I think LinuxServer docker image runs it as part of the same docker container.
As I am pondering over that idea, I think it makes sense. Also I gained more xp in docker containers matters :) In any case, for near future (couple of weeks or so) I will provide
a docker image tagged "bundle" e.g papermerge/papermerge:2.1.9-bundle which will run one restapi server, worker websockets server and web UI in one single docker image. This will help people who want to stick with simple and quick setups (linux linuxserver provides for 2.0.x).

@ciur ciur self-assigned this Mar 12, 2023
@ciur ciur added the question Further information is requested label Mar 12, 2023
@kolossboss
Copy link
Author

@ciur
Thanks for the kind reply.
And even bigger thanks for the very detailed explanation!

Now I understand the why you did this. And it was probably the better way from a developer's point of view.👍
I will definitely try the development Image. And I'm looking forward for the new "single container" release.
Thank you for taking user problems so seriously!

@ciur
Copy link
Member

ciur commented Mar 16, 2023

@kolossboss, here is new, simplified docker compose file.
Notice there is nothing about traefik, frontend/backend, web sockets in it - now there are just 4 services which, I guess, should make perfect sense to have around:

  • rest api backend
  • worker (for performing OCR)
  • db
  • redis

Now, the simplest way of lunching papermerge:

  docker run -p 16000:8000 \
      -e PAPERMERGE__MAIN__SECRET_KEY=abc \
      -e DJANGO_SUPERUSER_PASSWORD=123 \
      papermerge/papermerge:2.1.8

will include UI as well, on other words, if you point your browser to http://localhost:16000, you will see papermege login window.

If you experience any "gray screen", please either delete cookies for that domain (localhost:16000) or start in incognito mode.

@kolossboss
Copy link
Author

Thanks a lot.
A few days ago, I tried the "dev" Version and its working fine.
Now I get this error when I lunching Papermerge via Terminal:

docker: no matching manifest for linux/arm64/v8 in the manifest list entries.

And this via compose and Docker

failed to deploy a stack: redis Pulling backend Pulling worker Pulling db Pulling redis Error backend Error no matching manifest for linux/arm64/v8 in the manifest list entries

I'm running Docker on Apple Silicon M2.

@ciur
Copy link
Member

ciur commented Mar 17, 2023

@kolossboss, can you try it again, please?

Just make sure you (re) fetch (pull again) 2.1.8 docker image - as I recreated it.

By mistake I removed "building of docker images for arm64" platforms. I added that part back and recreated 2.1.8 docker image. Now docker image (2.1.8) should run on M2 processors (which are arm64) as well.

@kolossboss
Copy link
Author

@ciur
Now its working! Thanks.

But this is still a test version right? I missing features like importing or automates.

@mblahay
Copy link

mblahay commented May 20, 2023

I too would like to know whether 2.1 is still in test phase.

@ciur
Copy link
Member

ciur commented Dec 2, 2023

The next release is 3.0, which is now in testing phase.

You can try it:

I have simplified the setup a lot. Now it is easier start with Papermerge.

@papermerge papermerge locked and limited conversation to collaborators Dec 2, 2023
@ciur ciur converted this issue into discussion #270 Dec 2, 2023

This issue was moved to a discussion.

You can continue the conversation there. Go to discussion →

Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants