Solved Moodle Open Source Learning Platform
-
-
This would be a major +1 addition
Integrates with: NextCloud, OnlyOffice, RocketChat & BigBlueButton!
Great educational offering!
=] -
Is there progress on this?
A starting repo? dockerized example? -
One thing is its pretty plug and play with the LAMP stack (literally clone and copy the moodle source into the public folder)
-
I mean I could probably try to make a one-click for it. I just need to test if I can pre-config the DB, because Moodle has its own config interface where it asks for that info.
-
@atrilahiji
Thanks for that tip, I will investigate.
Hopefully it's scalable from there as I am not sure all the text/pdf + video content should be stored in the app.
How well does Moodle handle externalizing content via embeddings? -
@robi I'm throwing together a package now to test the process of making an app for Moodle. I'll see if I can automate more (I work on Moodle and surrounding apps for my job).
As for your question, I am not sure what you mean exactly. I would generally suggest ALWAYS using an external source to store large files as Moodle handles is poorly. The institution I work at always recommends using something like Google Drive and then embedding the content.
-
-
@atrilahiji Awesome! Thank you so much.
-
@robi np
-
@atrilahiji Sounds like an excellent start. BTW, I see you started out with Lamp app. It probably has a lot of superfluous stuff like FTP support etc. You can instead trim it down to be like say the https://git.cloudron.io/cloudron/snipeit-app app or any of the other PHP apps. Thanks for working on this!
-
@girish Good suggestion! I'll look at the other PHP apps for reference. I know Moodle has a non interactive install process so im hoping to leverage that to automate this a bit. Right now its the LAMP stack with a pre-populated public folder. It just makes it slightly easier to deploy? I was going to say that BBB would be an amazing choice on top of this, as Moodle + BBB work quite well together. I know the greenlight app is being worked on but maybe someone can look at the BBB server too? (call to someone out there to help! :D)
My schedule is very tight so it might take me a bit to get something proper working for Moodle. I will definitely welcome collaboration if anyone else would like to pitch in!
-
@atrilahiji isn't BigBlueButton (BBB) just a plugin for Moodle?
Looks like just a drop-in zip file.
https://docs.moodle.org/30/en/BigBlueButtonBN#Installation -
@robi Thats a plugin to integrate with a BigBlueButton server. You'd still need to host the BBB server and then use that plugin to let instructors create sessions straight from the LMS.
-
for a dedicated education app. Remote learning is certainly new ground to many and a Cloudron solution to that would be good for many organisations.
-
@atrilahiji Thanks for doing this. I recently was running my Moodle in the LAMP app and it worked well. How will the packaged Moodle you're working on handle upgrades?
-
@atrilahiji said in Moodle Open Source Learning Platform:
maybe someone can look at the BBB server too? (call to someone out there to help! :D)
I'm hoping that as soon as BBB 2.3 is released (which is compatible with Ubuntu 18.04 unlike the existing releases which still only run on 16.04!) @girish & @nebulon (& or others in the community) will begin packaging BBB.
See this thread:
https://forum.cloudron.io/post/1187 -
@scooke good question. It shouldnβt be an issue as far as I can tell. Again the package needs a lot of work before itβs ready but I imagine weβd just swap out the contents of the public folder and it would trigger an upgrade when you go to the site.
Right now Iβm trying to automate any config I can and perhaps get LDAP working??? The problem is it makes an admin account in the setup. Unsure how to get around that.
-
@atrilahiji said in Moodle Open Source Learning Platform:
The problem is it makes an admin account in the setup. Unsure how to get around that.
Quite a few apps on Cloudron do that.
Generally some initial set-up instructions are given at install for how to access the default admin account it creates, and then you login using that, change the password and make an LDAP user an admin too.
-
@robi @girish Made a couple of changes. Definitely open to feedback.
https://git.cloudron.io/AtriLahiji/moodle
Still need to figure out LDAP.
EDIT: Unsure if LDAP config is something I can automate. Perhaps I'll document it away unless someone else has any ideas.
-
-
I found this tool - https://moosh-online.com/commands/ . It seems to be able to install plugins via the
plugin-install
command.Thanks @atrilahiji . @nebulon and I will take a look sometime this week on how to move this forward and get it published.
-
@atrilahiji said in Moodle Open Source Learning Platform:
@robi Thats a plugin to integrate with a BigBlueButton server. You'd still need to host the BBB server and then use that plugin to let instructors create sessions straight from the LMS.
Oh I see, just like OnlyOffice with NextCloud. That begs the question, does Moodle integrate with NextCloud?
The NextCloud Talk (spreed) audio/video is a great replacement for zoom/webex/kopano/jitsi!
If so, no need for BBB.
-
@robi Looks like this is possible in core as of Moodle 3.6. Current latest is 3.9.2+.
Source: https://moodle.com/news/nextcloud-integration-in-moodle-3-6-open-source-supporting-open-source/
Looks like its only a repository, meaning it integrates with the file picker similar to local files and google drive.
-
-
@atrilahiji Yes, it will help if you can remove all the non-essential code from the app. I think because you started from the LAMP stack, there's lots of extra stuff:
- Can remove the RPAF thing - https://git.cloudron.io/AtriLahiji/moodle/-/blob/master/Dockerfile#L34 (the whole section can be removed till line 44)
- Remove phpMyAdmin (like 46-49)
- Remove cron (line 51-54)
- Remove iconcube (line 56-64)
- You can even remove supervisor altogether and just straight run apache
Same goes for start.sh.
- Remove cron/phpmyadmin/credentials stuff. Line 16-57
You can look at https://git.cloudron.io/cloudron/directus-app for inspiration. Let us know if you need help!
-
I'm really looking forward to Moodle being available, many thanks for getting this going @atrilahiji !
And, given your day job/ links to Moodle perhaps you'd be interested in helping to package MoodleNet too?!?
-
@girish For sure, I can get that sorted. Moodle makes use of cron tasks so I may need to leave that bit in.
@jdaviescoates I can take a look at it next.
-
@atrilahiji For cron, use the scheduler addon. Like this https://git.cloudron.io/cloudron/snipeit-app/-/blob/master/CloudronManifest.json#L12 . This way you don't need all the supervisor stuff and also dont need to run a separate cron process in the app itself.
-
@girish Cool thanks! I think I have it working mostly. Trying to sort out an ERR_TOO_MANY_REDIRECTS situation.
EDIT: I pushed what I have since I have to go out
-
@atrilahiji Awesome, thanks. I have forked into https://git.cloudron.io/cloudron/moodle-app and pushed some more fixes. You should have gotten an invite to the repo. I see the redirect issue that you are seeing as well.
-
@girish Thanks a lot! I have never actually handled Moodle hosting it so the Apache setup is definitely new to me. I'm glad you guys and the community have more experience otherwise I'd be completely lost :')
This community is 10/10
-
Moodle needs to write a config.php file inside /app/code and a moodledata directory during its install. Looks like its getting tripped up on that.
-
@atrilahiji said in Moodle Open Source Learning Platform:
Moodle needs to write a config.php file inside /app/code and a moodledata directory during its install. Looks like its getting tripped up on that.
You can symlink the file to /app/data so it can.
-
I seem to get this no matter what I do. Trying to write moodledata to /app/data but it says it doesn't exist?
-
@atrilahiji is that an ownership or permission issue?
-
@robi could be. Iβll take another look at it in a bit.
EDIT: This will be the death of me -_-
There must be something I am missing. That or I just suck at Linux.
-
you should see more something like this from WP:
lrwxrwxrwx 1 www-data www-data 23 Sep 13 16:42 wp-config.php -> /app/data/wp-config.php
To do this you can do:
from /app/codemv config.php /app/data/moodledata
then
ln -s /app/data/moodledata/config.php /app/code/config.php
-
Fixed the read only issues. We're back to good ol' ERR_TOO_MANY_REDIRECTS issue. I imagine its an http -> https -> http -> ... issue. Whatever it is its definitely at the reverse proxy level.
Anyways @girish I have a MR when you have time.
-
@girish This ERR_TOO_MANY_REDIRECTS issue has me stumped. Tried a few things tonight with no luck. Any ideas?
-
@atrilahiji Merged your MR and fixed the redirect issue as well.
Do you use or need LDAP in your setup? If not, we can leave LDAP integration for some future release. SMTP still needs to be automated though.
-
@girish thanks
Yeah LDAP can be a later release. Iβll get SMTP figured out though
-
@atrilahiji What you can do is basically setup SMTP and then look into the database entries. https://docs.moodle.org/19/en/Email_settings gives some hints on how to update it. So, we can just put some sql commands in the start.sh .
-
@girish Done. Merge Request is up: https://git.cloudron.io/cloudron/moodle-app/-/merge_requests/2
Excited to get this up!
-
@girish said in Moodle Open Source Learning Platform:
Do you use or need LDAP in your setup?
LDAP integration is a key USP of Cloudron so hopefully this'll come soon too!
Especially as Moodle now integrates nicely with Nextcloud 20!
Moodle courses showing up in searchSee:
https://nextcloud.com/press/pr20201003-4
https://help.nextcloud.com/t/nextcloud-hub-20-debuts-dashboard-unifies-search-and-notifications-integrates-with-other-technologies/93838 -
@jdaviescoates Iβll see what I can figure out. Perhaps itβs done the same way I added SMTP.
-
@atrilahiji Merged! Awesome stuff, didn't know about cfg.php. I made a change after merging your change which is to setup credentials on all startup and not just the first time. We do this because let's say you clone the app or move it to another server etc, then the SMTP credentials will change.
-
I have pushed moodle in unstable now and will mark this thread as solved.
Let's take up bugs/issues in a the new Moodle app category - https://forum.cloudron.io/category/102/moodle
Again, thanks a lot @atrilahiji !
-
@girish oh I didnβt think about that use case. Thanks for all of your hard work! Iβll get on LDAP sometime this weekend and maybe we can get that into a release soon
-
@atrilahiji @girish
+1
-
Great work @atrilahiji & co.