cancel
Showing results for 
Search instead for 
Did you mean: 

alfresco 6.2 docker on Raspi 4 8Gb. Work in progress.. help needed ..

Giuliano
Confirmed Champ
Confirmed Champ

Hi
I'm trying to install Alresco 6.2ga on Raspi4 8Gb, with ubuntu20.04 64bit

FIRST I tried a manual install.
Succeded easily installing Tomcat 9.041, Nginx 1.18, OpenJDK11, Postgres 12 on Rapi4.
BUT then the config of the various xml did take a lot of weeks without any result...

THEN I tried to use docker.
https://github.com/Alfresco/alfresco-docker-installer
https://hub.alfresco.com/t5/alfresco-content-services-blog/installing-alfresco-6-community-edition-i...

The docker-ce install was very easy on Raspi&Ubuntu20.04 !!; In a matter of minutes I was running
sudo docker-compose up --build --force-recreate

BUT.... getting to deploy the share container, the install stop like:

-----------------------------------------------------------------------
-----------------------------------------------------------------------
ubuntu@ubuntu:~$ sudo docker-compose up --build --force-recreate
Building with native build. Learn about native build in Compose here: https://docs.docker.com/go/compose-native-build/
Creating network "ubuntu_default" with the default driver
Building share
Sending build context to Docker daemon 1.628MB

Step 1/10 : ARG SHARE_TAG
Step 2/10 : FROM alfresco/alfresco-share:${SHARE_TAG}
---> 610344dcdf00
Step 3/10 : ARG TOMCAT_DIR=/usr/local/tomcat
---> Using cache
---> d711c4e25d38
Step 4/10 : ARG SERVER_NAME
---> Using cache
---> dfc1aee09ff2
Step 5/10 : USER root
---> Using cache
---> 8eced9415245
Step 6/10 : RUN mkdir -p $TOMCAT_DIR/amps
---> [Warning] The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
---> Running in 626ae07a6fa3
standard_init_linux.go:219: exec user process caused: exec format error
The command '/bin/sh -c mkdir -p $TOMCAT_DIR/amps' returned a non-zero code: 1
ERROR: Service 'share' failed to build
-----------------------------------------------------------------------
-----------------------------------------------------------------------

the RAspi architecture (Arm64) is different from what the docker expects (amd64)

*** Open PROBLEMS (HELP needed !! 🙂

  1. -- The Share dockerfile redirect " FROM alfresco/alfresco-share:${SHARE_TAG}" .
    Staring from there (I suspect ...) Tomcat and Java will be "pulled inside"...
    Considering that Tomcat&Java docker exist for arm64 in docker hub, how can I modify Alfresco share dockerfile to make use of them and install Share on raspi4 ?
  2. -- We have to change in .env.sh the POSTRES_TAG=11.4; that versione do not exist for arm64.... Is it safe to change to version 12 ?
  3. -- PDF Renderer binary does NOT exist form Linux arm64. May it be forgotten, and use imagemagik at his place ?
    What changes are needed to this result ?


*** WHAT may HELP

  1. --official docker images for arm64 exist for the following layer: Java11, Tomcat, postgres, nginx, activemq. May them help in reforging the Alfersco dockerfiles for arm64 ? Where shoudl  I make modifications ?
  2. -- the same services above can be installed as sudo apt install without problems. Is it safer/better to install them directly ?
  3. -- libreoffice , imagemagik may be installed ONLY by apt install as "native" program. Where will I found the alfresco_global.properties to make the changes ? Should I create a specific volume instruction to reach the "native" program from "inside" the docker ?
  4. Could someone share some hints on how to complete installation of Alfresco 6.2 with docker on Raspi4?

Thanks in advance for any help !

Giuliano

2 REPLIES 2

afaust
Legendary Innovator
Legendary Innovator
  1. Alfresco images for Repository and Share do not use a standard Tomcat image as a base - Alfresco has its own Tomcat base image project (https://github.com/Alfresco/alfresco-docker-base-tomcat/)
    You would have to redo all Alfresco images (Repository, Share, Search Services, and all the Transformer images) which are currently based on a non-arm64 CentOS base, including intermediary images, on a arm64 base OS
  2. Not sure what you meant with the question about "apt install" vs "install directly". In practice, it does not matter how a component / service is installed inside a Docker container image as long as it is "correctly" installed. If your question was about installing Alfresco and required services without Docker, then it is possible to do that as well, albeit no longer considered an officially supported option. On some environments (e.g. Windows servers) it is the only appropriate option as Docker overhead (in all my experiences so far) is way too high for production use. (Haven't had a chance yet to test Docker on a server with Linux subsystem for Windows)
  3. In Alfresco 6.2, Libreoffice etc. should typically be referenced using "local transform", e.g. with properties like "localTransform.imagemagick.url", calling a separate Java application via HTTP which then performs the transformation - 6.2 is the last versions to still support legacy transformers via direct invocation of the programs, but for this the service must be available on the same host / inside the same container
  4. For simple Docker-based installations, you could use something like https://github.com/Alfresco/alfresco-docker-installer/

Thanks for your kind reply,
Considering that I would like to keep the installation modification at bare minimum,
the modification to specific Alfresco Java Docker + Alfresco Tomcat Docker + Alfresco Active MQ Docker will be not trivial. And will brake compatibility.

I will try to fork Ansibile install for Alfresco, to try to make it compatible with Raspi4 8Gb with minimum changes.
https://hub.alfresco.com/t5/alfresco-content-services-blog/ansible-playbooks-for-alfresco-content-se...
https://github.com/jpotts/ansible-alfresco

I will keep informed on how it works... 🙂

May you share some more information ?

PDFRENDERER:
AFAIK the binary exist (is licensed) only for amd64. NOT arm64.
May it be suppressed from installation without any inconvenience ?
May the same functionality be provided by Imagemagik ?
How could/should I manage the config files to make the job done with ImageMagik instead of pdfRenderer ?