Open kdmccormick opened 2 years ago
This would be really cool! It would bring us all the way back to 2015, when Cypress was running in the "fullstack"... Kidding aside, yes: running Open edX outside of Docker would make it much easier to to hack on edx-platform (and the different services). It would be great if we could just run data storage services (mysql, mongodb, elasticsearch, redis) in containers, and the lms/cms as regular ./manage.py lms runserver
commands on the host.
I agree with what @regisb says. It would be great to have the option to use a hybrid tutor/host environment for more flexibility and less resource usage. I can see some addressable challenges:
1. System dependencies: being tied to ubuntu and to specific package versions can rip users of some freedom they need. It's worth considering a mode where edx-platform system dependencies are isolated from the system. So instead of docker, one could think of bundling edx-platform's system dependencies in a package which can be isolated when installed using the existing methods [ schroot: more hands-on, snap: no recommending, flatpak: maybe :thinking:, you name it!]
2. Security and hardening: getting out of docker again probably means you'll have to toy with the host's security settings, permissions, etc. Not sure how much work is there once other services are excluded, nor if it's really what we want. But I know for sure we have veterans able to do all of this if really needed.
Great points @ARMBouhali .
After we try this, it's highly likely we will conclude that Docker is in fact worth its trouble, given all the system issues you mentioned. Still, I'm curious what we'll learn along the way :)
Even if we never run this way, it's been helpful in forcing cleanup of the common.py settings file.
The latest small iteration on this: https://github.com/openedx/edx-platform/pull/32196
Context
In our conversations about Devstack & Tutor, there's been an unstated assumption that containerization (e.g., Docker) is the basis for an ideal development environment.
For the sake of discovery, though... could we get LMS & CMS running directly in Ubuntu without using containers? Would the experience be better or worse?
Acceptance Criteria
TBD.
@feanil and @kdmccormick will be doing likely be trying this out in hackathon style in Dec 2022.