Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can we run edx-platform directly in Ubuntu? #39

Open
kdmccormick opened this issue Nov 28, 2022 · 4 comments
Open

Can we run edx-platform directly in Ubuntu? #39

kdmccormick opened this issue Nov 28, 2022 · 4 comments
Assignees
Labels
discovery Pre-work to determine if an idea is feasible

Comments

@kdmccormick
Copy link
Member

kdmccormick commented Nov 28, 2022

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.

@kdmccormick kdmccormick added the discovery Pre-work to determine if an idea is feasible label Nov 28, 2022
@regisb
Copy link
Contributor

regisb commented Nov 29, 2022

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.

@ARMBouhali
Copy link

ARMBouhali commented Jan 11, 2023

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 🤔, 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.

@kdmccormick
Copy link
Member Author

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 :)

@feanil
Copy link
Contributor

feanil commented May 9, 2023

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: openedx/edx-platform#32196

@kdmccormick kdmccormick transferred this issue from openedx-unsupported/wg-developer-experience Mar 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discovery Pre-work to determine if an idea is feasible
Projects
No open projects
Development

No branches or pull requests

4 participants