When developing with Alfresco, managing builds and configurations can become complex, especially in containerized environments. Docker Buildx Bake command provides a powerful way to simplify multi-container builds by using a declarative approach. Combined with Make and environment variables, developers can further streamline the process of setting up and deploying an Alfresco environment tailored to their needs.
The Alfresco Dockerfiles Bakery repository on GitHub brings these tools together, making it easier than ever to build, configure, and deploy an Alfresco stack in Docker. In this post, we’ll go over the requirements, setup, and key use cases for this project, plus show how the Makefile
and environment variables work with Docker Bake to create a seamless Alfresco deployment experience.
To get started with Alfresco Dockerfiles Bakery, ensure your environment includes the following:
The bakery supports building images for various Alfresco components:
Content Services (Repository)
Search Services
Transform Services
Connectors
ADF Applications
Sync Service
The project uses a hierarchical approach with standardized base images:
Configuration
Build groups
Pre-defined build groups for different deployment scenarios:
enterprise
: Full enterprise stackcommunity
: Community edition componentscontent_service
: Core content servicessearch
: Search-related componentstengines
: Transform enginesconnectors
: Integration connectorsTo begin, clone the repository and navigate to the project directory:
git clone https://github.com/Alfresco/alfresco-dockerfiles-bakery.git
cd alfresco-dockerfiles-bakery
This project uses docker-bake.hcl
to define various build configurations and the Makefile
to simplify common tasks:
The combined use of Docker Bake, Make, and environment variables makes Alfresco Dockerfiles Bakery an ideal tool for several scenarios:
make build
with specific environment variables allows developers to match production configurations effortlessly.docker-bake.hcl
and Makefile
commands, the project can be seamlessly integrated into CI/CD workflows, such as Jenkins, GitLab CI, or GitHub Actions.The Alfresco Dockerfiles Bakery provides a standardized, maintainable approach to building Docker images for Alfresco products. Its modular design and comprehensive configuration options make it a valuable tool for both development and production deployments of Alfresco solutions.
For the latest updates and detailed documentation, visit the official repository.