I managed to get Mayan running using Alpine Linux but the final image size was almost the same using Ubuntu. There were too many path and configuration file changes and while Alpine runs well it is not LSB compliant. I don't think it is a fit for something like as complex as Mayan and needs to run reliably in business settings. Alpine was a bit faster but is missing too many things like language files and fonts (our multi language Office test document doesn't render using Alpine). There are problems with Ubuntu too. Ubuntu 16.04, the recommended version for Mayan, is rather old and missing a recent kernel. Moving to a newer version breaks too many things. Ubuntu is not careful when it comes to backwards compatibility. RedHat, Fedora and CentOS were a disaster. Many basic libraries are missing and the official recommendation is to use third party repositories. No thanks. I'm going to try Debian next, which is very secure but also very stable in terms of release continuity (as opposed to Ubuntu).
Docker adding support for multi architecture images for many of its base images and while not yet official they are very stable and work very well. The Docker image for Raspberry Pi and for the Odroid deployed perfectly from the same Dockerfile file used to deploy for AMD64. However, given that the power and RAM of the ARM boards is considerably less than that of a desktop PC, the Dockerfile for these board will still need to be published as a separate repository. The main problem is that launching 4 workers (fast, medium, slow, OCR) works on a PC, on an ARM board, it consumes all available RAM (1 or 2 GB), which slows the board to a crawl. We need a way to detect the platform for which the image is being generated and do a conditional branch to select a different template for supervisor for example. The official Postgres image does this but I have yet to understand how it does it. Another suggestion I have is that we create several versions of the same release. Not really versions but "flavors". For example: Mayan EDMS mini - For ARM boards, disables file signatures, workflows and OCR. Doesn't include LibreOffice or Tesseract. Mayan EDMS user or standard - For AMD/Intel servers, disables file signatures and workflows. Mayan EDMS commercial or enterprise - The current version of the Docker image. Implementing these is easy. An environment variable is passed to the docker build command specifying the flavor of the image that triggers conditional code in the Docker file. The current Docker repository URL for the Mayan EDMS image needs to be updated. Currently it is mayanedms/mayanedms. This doesn't allow for other flavors of the image. A better scheme would be: mayanedms/standard:2.8 mayanedms/mini:2.8 mayanedms/arm64:2.8 and so on. It allows for different flavors and version of the product. On Wednesday, February 28, 2018 at 8:36:42 PM UTC-4, lonevi...@gmail.com wrote: > > Yes we do :) But are trying to push some improvements before releasing it. > Eric is working on modernizing the existing Docker image. He is also trying > to merge it with the ARM Docker image to provide a single multi > architecture image that would work the same on a PC and on a Raspberry Pi. > We are also experimenting with Alpine Linux to reduce the image size. Once > finished we will announce it on the list. > > On Wednesday, February 28, 2018 at 2:07:59 PM UTC-4, RW Shore wrote: >> >> re version 2.8: do you plan to have a Docker container as well? (hint >> hint :-) >> >> On Tue, Feb 27, 2018 at 5:40 AM, <lonevi...@gmail.com> wrote: >> >>> Hi all, >>> >>> We love Mayan EDMS and have come to depend on it for our daily work. >>> Like many of you we are worried about the effects hurricane Maria has had >>> on the development of the project. So we decided to do something about it. >>> >>> We gained good knowledge about the internals of Mayan EDMS from customizing >>> it for our own use. Looking at the code for the next version we could see >>> that much work had already been done. We were confident we could finish the >>> remainder tasks to be able to take the code to a point where a version 2.8 >>> would be possible. >>> >>> We contacted Roberto with our idea. While his communication options are >>> limited, he nonetheless provided us with some great guidelines. We >>> don't pretend our fork to replace Mayan EDMS so we are naming it Mayan EDMS >>> NG (Next generation). To make things easier we continued the version >>> numbering. >>> >>> So, we are proud to release our work as Mayan EDMS NG version 2.8. >>> >>> Our forks is just a continuation of the work already started by Roberto >>> for version 2.8. Therefore it is 100% compatible with any existing data. >>> >>> Our work focused on the following areas: >>> >>> * Finishing the API test refactor. The purpose of this refactor is to >>> test each API function for permission and access failure and success. The >>> API tests we also updated to conform with the new API Test class interface >>> which reduces a lot of boilerplate code. There are now a minimal of two >>> tests for each API function. >>> >>> * Some minor permission changes were made when obviously needed such as >>> the Workflow Create permission not having any effect. >>> >>> * Roberto had already backported the notifications feature to the "next" >>> branch and our work just focused on giving the final polish to this feature >>> by removing duplication. >>> >>> * Some user interface fixes and updated we added. These were inspired by >>> discussion on the mailing list and from looking at the Open Paperless fork >>> by Tina Zhou. >>> >>> * Introduction of the MERC (Mayan EDMS Request for Comment) as a means >>> of documenting the internals of the project, proposing features, changes to >>> the code as well as to the related process of the project. This type of >>> documentation mechanism has been very successful for other things like the >>> Internet (RFCs), Python (PEPs) and Django (DEPs) and we are sure it will >>> also help Mayan EDMS a lot. >>> >>> The repository for this fork is >>> https://gitlab.com/Michael.Price/mayan-edms. From there you can examine >>> the changes that we made to get the code to release level. Our work is >>> available from PyPI as mayan-edms-ng. >>> >>> We hope you enjoy it, thank you. >>> >>> Michael Price, internals and process >>> Eric Riggs, user interface >>> >>> -- >>> >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "Mayan EDMS" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to mayan-edms+...@googlegroups.com. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- --- You received this message because you are subscribed to the Google Groups "Mayan EDMS" group. To unsubscribe from this group and stop receiving emails from it, send an email to mayan-edms+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.