alfrescolabs / alfresco-docker-extension Goto Github PK
View Code? Open in Web Editor NEWExperimental Alfresco Docker Extension to deploy ACS Stack
License: GNU Lesser General Public License v3.0
Experimental Alfresco Docker Extension to deploy ACS Stack
License: GNU Lesser General Public License v3.0
CODE-OF-CONDUCT.md is a must read file for a new contributor in any repository before starting to work.
Kindly assign me this issue under hacktoberfest. I would like to work on it.🚀
Current design supports the execution of Alfresco for testing purposes, but storage is not persisted once the user has stopped the Extension.
It should be recommended to include an option to preserve named volumes with the information of database, repository, solr and activemq containers.
Since downloading Docker Images for ACS Stack may take a while, adding a previous step to verify if the Docker Images are available locally and pulling unavailable to local registry is required.
This way may improve user experience, as more detailed feedback can be provided.
Every time an error happens in Docker CLI layer, the UI shows the "ERROR" block but the original cause is missed.
Logging the error in Console Log and also in "ERROR" block would help to understand the real status of the deployment.
There is (was?) dedicated code to change the logo when changing modes. It needs to be verified that works for dark and light mode.
Fix errors coming from:
$ docker extension validate angelborroy/alfresco-extension
INFO Checked image labels
ERRO (required) image label "com.docker.desktop.extension.icon" is missing
ERRO (required) image label "com.docker.extension.categories" is missing
ERRO (required) image label "org.opencontainers.image.title" should not include the word "extension" in "alfresco-extension"
Image labels check failed. Learn more at: https://docs.docker.com/desktop/extensions-sdk/extensions/labels/
INFO Checked metadata.json
INFO Checked image tag is semver
ERRO Image tag "latest" is not semver compliant
Semver check failed. Use a valid semver tag like "0.0.1". Learn more at: https://semver.org/
INFO Checked image is multiplatform
The extension "angelborroy/alfresco-extension:latest" hasn't passed the checks to be published.
Please fix the errors above and run the validate command again.
Include also UI containers to deployment:
Expose all the services (repository, search...) using the same HTTP Port 8080
Change the "START" button to open http://localhost:8080/content-app
We recommend displaying the “Alfresco is ready!” banner and other banners that translate the feedback after an action to the top of the extension (like where the loading state is placed) so that users can always see/read the feedback even when not seeing the full table in their window size.
The main Alfresco icon looks really small when there is plenty of space. I noticed it only looks small when resizing the screen to a smaller one.
It's required to check that every container is live & running (currently 5 of them) before showing the "Alfresco is Ready!" message.
When executing the "Run" and "Stop" command in Linux host, errors similar to the following one happen:
{"killed":false, "code":125, "signal":null, "cmd":"docker stop $(docker ps -qf \"network=alfresco\")","stdout":"","stderr":
"unknown shorthand flag: 'q' in -qf"}
It looks like the syntax working for Mac is not working for Linux.
Once the "Run" button has been pressed, there is no user feedback till all the containers are running.
Including a progress bar and some messages while running the containers will help the user to understand how the process is working.
Some sample messages:
This extension can be taken as example:
https://github.com/docker/volumes-backup-extension/blob/main/Dockerfile#L60
To assess the type of architecture of the host we invoke the info on docker cli.
const result = await ddClient.docker.cli.exec('info', [
'--format',
'"{{json .}}"',
]);
Which are the possible values of the field Architecture?
So far this is they type we are using
arch: 'none' | 'x86_64' | 'aarch64';
Once this extension is ready to be delivered, supporting APS deployment may be designed.
APS may use the same deployment strategy, but gathering Quay.io credentials is required.
Once the execution has been stopped, containers are removed. It's required also to verify that associated volumes to this containers are removed accordingly.
Help users understand what the first icon on each row means by adding a tooltip when hovering over, consider accessibility and how some people cannot distinguish colours or find the icon too small to get its meaning.
Same for the info button at the end of each row, tell the users what to expect if they click there or trade it with text; it also does not need to be a primary button, see here how to use different buttons.
According to the following documentation...
https://docs.docker.com/desktop/extensions-sdk/extensions/multi-arch/
... the Extension may be built for different architectures (mainly amd64 and arm64)
Refactor messaging to provide multi language support.
The “Open” button should be a link as it leads users outside of Docker Desktop and it would be useful next to the “Stop” button to be packed and treated the same way as the other actions.
The image of the extension must have a semver version in Docker Hub. Can you provide a link to your Hub image of the extension?
Currently the Docker Image is published with "latest" tag for amd64 and arm64 in:
It's required to push the 1.0.0 version.
From a living execution, following stats are obtained:
CONTAINER ID NAME CPU % MEM USAGE / LIMIT
25c7cd77650f alfresco 51.52% 1.927GiB / 2.93GiB
dbaf4968f224 solr6 13.53% 651.2MiB / 1.953GiB
5e091b2d8114 transform-core-aio 0.24% 718.3MiB / 2GiB
6144935b31d1 activemq 0.63% 221.2MiB / 1GiB
6bdb000b1ba3 postgres 3.99% 110MiB / 1.828GiB
This makes a memory limit of 11 GB, but following services seems to be oversized: solr6
, activemq
, postgres
.
Decreasing the memory reservation for this containers could help people to run the Extension.
Some of the containers are frozen when running them on Apple Silicon computers.
This require some investigation on the Alfresco side, since it's not related with the Extension itself.
Creating this issue as a reminder to re-test the Extension once the Alfresco Docker Images are ready for ARM64 architectures.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.