@agahkarakuzu here's the version of the notebook I've updated and tested that it runs on all three platforms.
Here are some major points:
Removed your old "path_data -> path_data + derivatives_folder" workflow since it wouldn't work on Colab and repo2docker, and also the clean version of the notebook wouldn't run on the production NeuroLibre server either due to a mismatch in expected file location
In NeuroLibre, it now copies the data into the image (really quick) in a clean folder (I called it "clean" since I can't call it "data", as NeuroLibre already mounts a folder with that name, but I'm open to suggestions). This transfer is very quick (faster than downloading the data on Colab and repo2docker).
On Colab, instead of installing the entire requirements.txt, I've omitted pip installing the jupyter-book package as one of it's dependency (sphinx) also gets installed by SCT, and for some reason Colab pauses the whole notebook to let me know about this. This only started happening recently to me, maybe a Colab update.
Since you had removed the repo2data installation from the postBuild file for NeuroLibre compatibility, I had to add this installation directly in the notebook for the case when we're running on an image that was build with repo2docker. To minimize some duplicate code and just for a more consistent directory structure, I then move this data to clean/ also just like the NeuroLibre case
I think that's the gist of it, maybe have a look and try it on NeuroLibre/Colab/repo2docker on your own. If you'd like to test it on the production server, let me know and I'll tell you the steps to my hack that gets it running on another NeuroLibre publication container
@agahkarakuzu here's the version of the notebook I've updated and tested that it runs on all three platforms.
Here are some major points:
I think that's the gist of it, maybe have a look and try it on NeuroLibre/Colab/repo2docker on your own. If you'd like to test it on the production server, let me know and I'll tell you the steps to my hack that gets it running on another NeuroLibre publication container