mirror of
https://github.com/ciur/papermerge.git
synced 2026-04-25 12:05:58 +03:00
[GH-ISSUE #123] Base OS for Docker image #91
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#91
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 @georgkrause on GitHub (Sep 15, 2020).
Original GitHub issue: https://github.com/ciur/papermerge/issues/123
Currently the docker image is based on Ubuntu which makes it bloated and big. Its much better to create slim images based on some much more minimal, eg alpine linux. Would you except a switch?
@georgkrause commented on GitHub (Sep 15, 2020):
I am not really suggesting using alpine linux, I just want to start a discussion if there might be the option to use something more minimal. There are some issues with python and alpine, which maybe is too much effort. But there are some other options like debian minimal or whatever.
@ciur commented on GitHub (Sep 15, 2020):
Hi @georgkrause,
I have nothing against alpine base image and I think it is a good idea to have Papermerge docker image running over the minimal linux image.
However there is one very important point to keep in mind.
Making Papermerge run over Alpine is not a trivial task. This is because Papermerge depends on many 3rd party applications like tesseract, imagemagick, poppler let it alone python with some of its dependencies shipped as compiled binary libs (e.g. lxml).
Now, alpine linux, in order to be as small as possible does not ship with glibc, instead is based on musl. This means that all binaries compiled against glibc - need to be recompiled/adjusted/tuned with musl.
I am not curagious enough to try that sort of adventure :)). Plus I am not a system programmer - means I am not familiar with linux system, its ABI, system calls etc.
That being said, if somewhere out there is willing to go over that couragious act - am will gladly help as much as I can :), but doing that alpine based image myself is far beyond my skills.
@georgkrause commented on GitHub (Sep 18, 2020):
Well, thanks for the open words!
I know this is not something which is done in like 5 Minutes. But the current image is not suitable for productive use from my point of view and I want to setup Papermerge so I need to do this anyway. I think the best place for such a Dockerfile would be directly in the repository.
I know there are some dependencies. But lets see:
I am aware that alpine ships with glibc and this was a problem for python some time ago but there are a lot of Alpine based Docker-Images for Python-Applications available and a huge amount of issues is fixed.
All this is no guarantee to make it work, but its worth a try from my point of view. And I want to try.
Now, the question is: Do you want to have something as part of papermerge (which would be the way to go from my pov) or should I develop it somewhere else.
By the way: We still can keep the current docker-files since it seems to be well suited for development, although it might be obsolete later when the alpine image is stable.
I would use the image in production even if its not rock solid yet so we have a good test field.
@ciur commented on GitHub (Sep 19, 2020):
I would like a separate repo. It would be great to have similarly how linuxserver.io guys did - they trigger a new docker image build every time there is a new tag created - very smart!
I really like linuxserver.io approach.. They have an ubuntu based arm docker image as well.
By the way, I was asked about alpine based image several times. I am sure if you manage to build one, it will be very popular.
Great ! fingers crossed 🤞 😁
@georgkrause commented on GitHub (Sep 20, 2020):
Can you explain why you don't want the Dockerfile in this repository? From my point of view its the best to support docker directly.
If you are against, we can close this issue and I am going to create this Dockerfile.
@ciur commented on GitHub (Sep 22, 2020):
Hi @georgkrause,
There is one dockerfile in this repository.
I don't see the point to recreate (replace it, add alternative next to) it just because it will be based on other base image.
If you like to create another docker image create it in different repo and I will gladly update documentation with a reference to your alternative image.