What is the status of Sugar on Docker for production environments?

Hi community,

We've been working happily with dockerized Sugar instances for our developments. Now some of our customers are starting to host their production applications on Openshift or other similar platforms. 

As far as we know, SugarCRM does not support Sugar on platforms other than "regular" operating systems. 

Is that the case? Is docker on the roadmap? 

Cheers,

Damien

  • Docker is not currently on the roadmap.  You can see our 8.0 supported platforms at http://support.sugarcrm.com/Resources/Supported_Platforms/Sugar_8.0.x_Supported_Platforms/ 

    On a related note... Since you said you've been using Docker for development, hopefully you're aware of Enrico Simonetti's Sugar Docker repo:  GitHub - esimonetti/SugarDockerized: Sugar Dockerized (Sugar application not included. Download at www.sugarcrm.com) .  We use it as part of our Professor M's School for Gifted Coders automation, and it works well.  You can learn more about how we leverage the Sugar Docker repo and see our scripts in the School repo:  GitHub - sugarcrm/school: Professor M's School for Gifted Coders 

  • Hi Lauren Schaefer,

    Not even on the roadmap? That is definitely a pity for an enterprise-grade application in 2018  

    This would help us fix some of the issues we encounter for instance with different versions of PHP required by different applications in an information system. 

    Although we are perfectly conscious of the vast amount of work invovled, we respectfully insist on having that on your backlog with a higher level of priority

    Finally, we are indeed well aware of Enrico's work. This is what we are using 

    Damien Pochon

    CRM & Digital consultant @ ITS4U Group

  • In 2018, as we build new apps and services on top of Sugar, you better believe we are looking at Docker and Kubernetes as we deploy these things in our cloud.

    Now for Sugar (which has been around for a while), all we specify in our supported platforms documentation are the software components. The execution environments are left undefined and up to the partner or customer to decide.

    For example, we've never claimed support for Azure Cloud though I'm sure people are running Sugar happily there. That said, SugarCRM isn't equipped to helped a customer configure their Azure hosting environment outside of what's defined in our supported platforms (ex. Linux, MySQL, Apache, and Elasticsearch).

    The same analogy applies to Docker. Though I recognize there are some unique challenges.

    Damien Pochon are there any product limitations or bugs that you run into when running Sugar in Docker today? File bugs or enhancement requests for them.

    App Ecosystem @ SugarCRM

  • Hello Matt,

    Thank you for your reassuring comments: it's good to hear that things are moving in the background. 

    Regarding the supported platforms documentation, we took the usual risk-based approach: it's not explicitely in the list, so it's must not be explicitely supported. 

    And yes we do have the expertise to setup and configure Portainer/Kubernetes/Openshift platforms, but you mentionned the unique challenges that exist in these contexts and that derive from Sugar's software architecture. I would also add the unique opportunities that come with this technology and the "from pet to cattle" approach. 

    I take it that we should be patient and wait for a fully supported stack.

    In the meantime we'll probably start working on our first simplified production environment on Docker tech. We'll try to share our insights with the community (and enhancements requests on the portal, of course). 

    Damien Pochon

    CRM & Digital consultant @ ITS4U Group

  • It's now 2020 and many customers are moving to the cloud... It would be great, though, if Enterprise could enjoy the same level of technical innovation as the rest of IT and move to a container-based architecture  

    Damien Pochon

    CRM & Digital consultant @ ITS4U Group

  • We asked also what is the agenda, the technical actions and the deadline to support the 12 factors app principle by the product.

    By this way than will confirm the capability to the product to be containerize and by consequence scalable , setting up on cloud infrastructure and more specifically on k8s infrastructure.

  • We've been experimenting with SugarCRM in docker and Kubernetes and having a lot of success. The main thing is that Quick Repair & Rebuild does quite the number on the database and file system, and you never want to run it if you're trying to keep the application container stateless.

  • Hi everybody,

    I want to know if anybody can share "guidelines" about using Kubernetes with SugarCRM ?

    Best regards,

    Fred

  • Hi ,

    Here's my personal take on Kubernetes as I used it heavily in few massive projects outside Sugar.

    1. Even though we use K8s internally in some deployments, we don’t have any documentation on how to set it or use for that matter
    2. We’ve been advocating SugarDockerized as our basis for containerization.
      1. It contains all necessary supporting software needed to run sugar (DB+searching+caching+cron), etc
      2. Its images can easily be used as the basis of K8s deployment
      3. We are committed to publishing the latest Sugar supported images on Docker Hub
    3. K8s deployments would follow the same basic idea as our docker-composer but in the K8s language
    4. Few K8s things you’d have to look out for are:
      1. Storage for your WEB+uploads uploads paths in more recent versions of Sugar requires care (permissions-wise)
      2. Ingress+LBs, but if you follow the basics to get to the reach the web container.
      3. Cron to run Sugar jobs (you should not use K8s’s jobs but let sugar run its own cron)
      4. Don't forget, one CRON instance per deployment
    5. K8s Sugar Install/Upgrades
      1. I don’t believe you’ll be able to use Sugar’s CLI but will be restricted to the UI
      2. Unless, of course, jumping into the Sugar Web’s container itself if needed.
    6. I found an OSS called sugar-k8s that seems to have accomplished what you need.

    Here's my 2 cents

    SugarCRM | Principal Developer Advocate

  • Thank you , that's a great feedback and a good starting point for our team.