resplin

Update on Docker Containers

Discussion created by resplin on Jan 3, 2018
Latest reply on Jan 5, 2018 by afaust

This is an update on our progress toward a new reference deployment of Alfresco Content Services based on Docker containers.

 

Customer Research

Our larger customers broadly appear to be adopting Docker and Kubernetes, and our Certified Partners have expressed enthusiasm about moving in that direction. But we were unsure if these technologies were seeing similar adoption by our smaller customers. We sent a survey to about 500 of our smaller customers asking them how they deploy enterprise software. About 10% responded (another 10% of those invited to participate were out-of-office for the end-of-year holidays). These are the highlights:

 

  • How do you usually install Alfresco products for production?
    • Executable installer: 50%
    • Manual setup from a zip file: 25%
    • 3rd party deployment tool: 10%
    • Build from source: 4%
    • AWS QuickStart: 0% (this is very surprising, as it is widely used by our larger customers)
    • Other: 11%
  • "How do you usually install enterprise software?" (select all that apply)
    • GUI installer: 60%
    • Command line scripts: 50%
    • A package repository: 33%
    • Manual setup from a zip file: 29%
    • Container deployments: 17%
    • Maven scripts: 6%
  • 50% of survey respondents consider themselves familiar with container technology (3 or above on a 5 point scale)
  • Rate your likelihood of adopting the following technologies in the next 12 months:
  • In 12 months, 78% of survey respondents expect to host Alfresco products on-premise, and 12% expect to host on AWS.
  • How would you use a container or virtual machine delivered by a vendor of an enterprise application?

 

This survey shows us that GUI experiences are more popular with our smaller customers than we expected, and the current installers are more widely used than we previously appreciated. We also see that though many of our customers are not yet prepared to adopt container technologies, many are already favorable and nearly two-thirds of these organizations say they would benefit from a containerized reference deployment to either use directly or to use in setting up their own installations. Though we didn't specifically ask the question, some respondents mentioned that their Alfresco deployments are maintained by 3rd parties such as Alfresco Certified Partners, which reduces the learning needed by customers.

 

Based on this survey, and feedback from our larger customers and partners, we feel that a containerized deployment provides the most value for our customer base. But we recognize that we need to make adoption as easy as possible for organizations that are not currently familiar with these technologies. We will seek additional feedback from these smaller customers to ensure that any solution we deliver can be widely adopted.

 

Progress Made

In addition to learning more about our customer's deployment preferences, we have made significant progress in delivering a new way to deploy Alfresco products.

 

  • We expect to provide containers for all Alfresco products, using Docker, Kubernetes, and Helm.
  • The containerized deployment will replace the installation bundles for Alfresco Content Services (ACS) and Alfresco Community Edition. We intend to stop building the installers for Alfresco Community Edition (ACE) immediately.
  • The containerized deployment will be used as a reference of proper deployment practices in our training, documentation, and other resources.
  • We will continue supporting deployments that adhere to our supported platforms list even if they do not build on our containers or modify our containers (though we are dropping support for some database and web application servers in the next release). We will continue to ship the distribution.zip for manual deployments of ACS and ACE.
  • Images for our private containers will be distributed to customers and partners through Quay.io, but we plan to publish our public containers to Docker Hub. We are not yet ready to distribute any containers, as we are still working out our policies regarding licensing and support.
  • If you are interested in our approach, you can look at the Helm chart for Alfresco Content Services and Alfresco Community Edition here:
    acs-community-full-packaging/helm/alfresco-content-services at master · Alfresco/acs-community-full-packaging · GitHub 
  • That Helm chart and the associated Docker definition files refer to private assets, and so aren't very useful for deployment with significant changes. We will be releasing more useful assets in the near future.
  • Ray Gauss published additional details on how we are bringing the various products of Alfresco together in the blog post Setting Course.
  • Expect more details at DevCon 2019.

 

Feel free to ask questions or provide feedback on this page.

Outcomes