Video tutorial
See below for a 4 minute tutorial on Installation, Usage and Data Access with Neurodesktop
This is the multi-page printable view of this section. Click here to print.
See below for a 4 minute tutorial on Installation, Usage and Data Access with Neurodesktop
The Neurodesk App requires Docker to be installed on your computer. If you already have Docker installed, you can skip this step.
After installation, open a terminal (Linux/macOS) or command prompt (Windows) and run the following command to verify that Docker is working correctly:
docker --version
docker run hello-world
If you have an existing Neurodesk App installation, please first uninstall it by following the uninstall instructions here. Then, install the app for your system:
sudo apt install -f ./NeurodeskApp-Setup-Debian.deb
sudo rpm -i NeurodeskApp-Setup-Fedora.rpm
yay neurodesk
(or follow instructions here)The Neurodesk App can be launched directly from your operating system’s application menu, or by running the neurodeskapp
command in the command line.
Note that the Neurodesk App will set the File Browser’s root directory based on the launch method used. The default working directory is the user’s home directory - this can be customized from the Settings dialog.
Sessions represent local project launches and connections to existing Neurodesk servers. Each Neurodesk UI window in the app is associated with a separate session and sessions can be restored with the same configuration later on.
You can start a new session by using the links at the Start section of the Welcome Page.
Open Local Neurodesk..
creates a new session in the default working directory.Connect to remote Neurodesk server..
creates a session by connecting to a remote Neurodesk server.Previously opened sessions are stored as part of application data and they are listed on the Welcome Page. Clicking an item in the Recent sessions
list restores the selected session.
Neurodesk App creates new Neurodesk sessions by launching a locally running Neurodesk server and connecting to it. To open a local instance, click the Open Local Neurodesk..
button in the Start section of the Welcome Page.
This will show a Jupyterlab interface. There are two options to interact with Neurodesk through this interface:
NeurodeskApp
icon on the right. This will launch a new window to start a Neurodesk interface.It can also connect to an existing Neurodesk server instance that is running remotely. In order to connect to a server, click the Connect to remote Neurodesk server..
button in the Start section of the Welcome Page.
This will launch a dialog that automatically lists the remote Neurodesk server instances.
Select a server from the list or enter the URL of the Neurodesk application server. If the server requires a token for authentication, make sure to include it as a query parameter of the URL as well (/lab?token=<token-value>
). After entering a URL hit Enter
key to connect.
If the Persist session data
option is checked, then the session information is stored and Neurodesk App will re-use this data on the next launch. If this option is not checked, the session data is automatically deleted at the next launch and servers requiring authentication will prompt for re-login.
You can delete the stored session data manually at any time by using the Clear History
option in the Privacy tab of Settings dialog.
Neurodesk App stores data in ~/neurodesktop-storage for Linux and Mac, or C:/neurodesktop-storage for Windows, as default.
Neurodesk App stores its data in the following locations:
By default, /home/jovyan/neurodesktop-storage in the app (which is bound with local directory ~/neurodesktop-storage in Unix or C:/neurodesktop-storage in Windows)
By choice, in the settings window below, select Additional Directory
on the left side bar, click Change
button to select the local directory, then click Apply & restart
. The next time you start the app, the data from the local directory can be found in /home/jovyan/data.
sudo apt-get purge neurodeskapp # remove application
sudo rm /usr/bin/neurodeskapp # remove command symlink
rm -rf ~/.config/neurodeskapp # to remove application cache
sudo rpm -e neurodeskapp # remove application
sudo rm /usr/bin/neurodeskapp # remove command symlink
rm -rf ~/.config/neurodeskapp # to remove application cache
sudo pacman -Rs neurodeskapp-bin
Find the application installation NeurodeskApp.app
in Finder (in /Applications or ~/Applications) and move to Trash by using CMD + Delete
. Clean other application generated files using:
rm -rf ~/Library/neurodeskapp # to remove application cache
rm -rf ~/Library/Application\ Support/neurodeskapp # to remove user data
On Windows, go to Windows Apps & Features
dialog using Start Menu
-> Settings
-> Apps
and uninstall Neurodesk App as shown below.
In order to remove application cache, delete C:\Users\<username>\AppData\Roaming\neurodeskapp
directory.
Install Docker from here: https://docs.docker.com/get-docker/. Additional information available below. Neurodesk also works with Podman.
Before the first run, create a local folder where the downloaded applications will be stored, e.g. ~/neurodesktop-storage
Then use one of the following options to run Neurodesktop:
Instructions on installing and using the app: https://www.neurodesk.org/docs/getting-started/neurodesktop/neurodeskapp/
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
If you get errors in neurodesktop then check if the ~/neurodesktop-storage directory is writable to all users. Otherwise run:
chmod a+rwx ~/neurodesktop-storage
http://127.0.0.1:8888/lab?token=your_unique_token
).If using Chrome, a pop-up may open with the text:
"http://127.0.0.1:8888 wants to
See text and images copied to the clipboard".
Press “Allow” to access your clipboard from within Neurodesktop.
Press on “Desktop Auto-Resolution” under “ALL CONNECTIONS”
If it is the first time you have used Neurodesktop, wait until the desktop appears (it may take a few seconds). Otherwise, it should appear instantaneously.
Neurodesk is now ready to use! See the tutorials page for advice on how to use Neurodesk.
For an optimal experience, switch your browser to full-screen mode by following the instructions for your browser here: https://www.thewindowsclub.com/open-chrome-edge-or-firefox-browser-in-full-screen-mode
When done processing your data it is important to stop and remove the container - otherwise the next start or container update will give an error ("… The container name “/neurodesktop” is already in use…")
Click on the terminal from which you ran neurodesktop
Press Ctrl-C
Run:
docker stop neurodesktop
docker rm neurodesktop
For general installation instructions, refer to https://docs.docker.com/get-docker/
Refer to https://docs.docker.com/engine/install/centos/
One example to install docker in a yum-based distribution could look like this:
sudo dnf install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install docker-ce docker-ce-cli containerd.io
# or if dnf not found: sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl enable docker
sudo systemctl start docker
sudo docker version
sudo docker info
sudo groupadd docker
sudo usermod -aG docker $USER
sudo chown root:docker /var/run/docker.sock
newgrp docker
Refer to https://docs.docker.com/engine/install/ubuntu/
One example to install docker in a apt-based distribution could look like this:
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo yum install nvidia-container-toolkit -y
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
--gpus all \
-p 8888:8888 -e NEURODESKTOP_VERSION=2023-09-20 \
vnmd/neurodesktop:2023-09-20
conda install tensorflow-gpu
python
import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
singularity pull docker://tensorflow/tensorflow:latest-gpu
singularity run --nv tensorflow_latest-gpu.sif
python
import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))
Startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 -p 3390:3389 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
Open your RDP client and connect to Computer localhost:3390
Use the following details to login if prompted
To enable VNC and disable RDP, startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc
To enable both VNC and RDP, startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc --rdp
Startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 -p 5901:5901 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc
Install the Tiger VNC client
sudo apt install tigervnc-client
Run the VNC Client and connect to localhost::5901
Enter password
and click Ok.
Install Docker from here: https://docs.docker.com/get-docker/
Open the Docker Desktop and Navigate to the Install Docker Desktop tab. Instructions found at https://docs.docker.com/desktop/install/mac-install/
Increase the Memory slider from 2.00 GB to 4.00 GB (or greater)
Increase Swap slider from 1GB to 2GB (or greater)
Use one of the following options to run Neurodesktop:
Instructions on installing and using the app: https://www.neurodesk.org/docs/getting-started/neurodesktop/neurodeskapp/
Create a local folder where the downloaded applications will be stored, e.g. ~/neurodesktop-storage
docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 -e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
If you get errors in neurodesktop then check if the ~/neurodesktop-storage directory is writable for all users. If it is not, run chmod a+rwx ~/neurodesktop-storage
http://127.0.0.1:8888/lab?token=your_unique_token
).If prompted, press on “Desktop Auto-Resolution” under “ALL CONNECTIONS”
If it is the first time you use Neurodesktop, wait until the desktop appears (it may take a few seconds). Otherwise, it should appear instantaneously.
Neurodesk is ready to use! See the tutorials page for advice on how to use Neurodesk.
When done processing your data it is important to stop and remove the container - otherwise the next start or container update will give an error ("… The container name “/neurodesktop” is already in use…")
Click on the terminal from which you ran neurodesktop
Press control-C
Type:
docker stop neurodesktop
docker rm neurodesktop
Startup Neurodesktop using the following command:
docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-p 3390:3389 -p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
Open your RDP client and connect to Computer localhost:3390
Use the following details to login if prompted
To enable VNC and disable RDP, startup Neurodesktop using the following command:
docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e VNC_ENABLE=true -p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
Startup Neurodesktop using the following command:
docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e VNC_ENABLE=true -p 5901:5901 -p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
Open a VNC Client and connect to port 5901
Install Docker from here: https://docs.docker.com/get-docker/
Alternatively, Neurodesk also works with podman: https://podman.io/
Use one of the following options to run Neurodesktop:
Instructions for installing and using the app: https://www.neurodesk.org/docs/getting-started/neurodesktop/neurodeskapp/
docker run --shm-size=1gb -it --privileged --user=root --name neurodesktop -v C:/neurodesktop-storage:/neurodesktop-storage -p 8888:8888 -e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
http://127.0.0.1:8888/lab?token=your_unique_token
).Press on “Desktop Auto-Resolution” under “ALL CONNECTIONS”
If it is the first time you use Neurodesktop, wait until the desktop appears (it may take a few seconds). Otherwise, it should appear instantaneously.
Neurodesk is ready to use! See the tutorials page for advice on how to use Neurodesk.
For an optimal experience, switch your browser to full-screen mode by following the instructions for your browser here: https://www.thewindowsclub.com/open-chrome-edge-or-firefox-browser-in-full-screen-mode
When done processing your data it is important to stop and remove the container - otherwise the next start or container update will give an error ("… The container name “/neurodesktop” is already in use…")
Click on the terminal from which you ran neurodesktop
Press control-C
Type:
docker stop neurodesktop
docker rm neurodesktop
Startup Neurodesktop using the following command:
docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v C:/neurodesktop-storage:/neurodesktop-storage \
-p 3390:3389 -p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
Open Windows Remote Desktop Connection and connect to Computer localhost:3390
as shown below.
Resolution and multi-monitor settings can be set from the Display tab.
Once ready, click Connect. This will take you to the following prompt
Use the following details to login
To enable VNC and disable RDP, startup Neurodesktop using the following command:
docker run --shm-size=1gb -it --privileged --user=root --name neurodesktop -v C:/neurodesktop-storage:/neurodesktop-storage -p 8888:8888 -e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc
Startup Neurodesktop using the following command:
docker run --shm-size=1gb -it --privileged --user=root --name neurodesktop -v C:/neurodesktop-storage:/neurodesktop-storage -p 5901:5901 -p 8888:8888 -e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc
Download the Tiger VNC client (vncviewer64-1.12.0.exe
) from https://sourceforge.net/projects/tigervnc/files/stable/1.12.0/
Run the VNC Client and connect to localhost::5901
Enter password
and click Ok.
To use Neurodesk Play, choose the link below closest to your location:
To use Neurodesk Lab, choose the link below closest to your location:
We provide different ways from drag-and-drop, to cloud storage to transfer your files in and out of Neurodesk Play.
There are a few differences between the open-source version of Neurodesk and what’s hosted on Nectar VDI:
/neurodesktop-storage
folder (the folder on the Desktop does not lead anywhere)./home/vdiuser/thinclient_drives/GUACFS
Click on “Sign in”.
Choose the AAF option.
Choose your institution from the list.
Provide your email address and password.
Click on create a Workspace (you only need to do this when you sign in for the first time).
Fill form ‘Apply for new Workspace’ and submit.
Click on “EXPLORE”.
Click “VIEW DETAILS” under Neurodesktop:
Click “CREATE DESKTOP +” button on the top right corner.
Choose the desired availability zone.
Wait until everything is completed:
Click “OPEN DESKTOP ->”:
For a general guide on using the ARDC virtual desktops, click here: https://tutorials.rc.nectar.org.au/virtual-desktop-service/01-overview
For a specific explanation on how to launch the various applications available in the Neurodesktop desktop, follow the instructions here: https://www.neurodesk.org/docs/getting-started/neurodesktop/
On the computer from which you want to access Neurodesktop, open an SSH connection to your cloud instance with port forwarding (USER should be substituted with a username that has admin privileges on the cloud instance, and IP should be substituted with the IP address of the cloud instance)
ssh -L 8080:127.0.0.1:8080 USER@IP
Install Docker on the cloud instance from here: https://docs.docker.com/get-docker/. Additional information available here: https://www.neurodesk.org/docs/getting-started/neurodesktop/linux/#installing-docker
Create a local folder ~/neurodesktop-storage on the cloud instance to store persistent data (data that will not disappear if neurodesktop is stopped)
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
If you get errors in neurodesktop then check if the ~/neurodesktop-storage directory is writable to all users. Otherwise run:
chmod a+rwx ~/neurodesktop-storage
If it is required to set up an SSH tunnel to access the cloud instance, please set up such a tunnel from the computer from which you want to access Neurodesktop (e.g. ssh -L 8080:127.0.0.1:8080 USER@IP
)
To access neurodesktop, open your web browser and type in one of those provided URLs provided in your terminal (e.g. http://127.0.0.1:8888/lab?token=your_unique_token
)
If the computer runs Linux, check specific instructions at https://www.neurodesk.org/docs/getting-started/neurodesktop/linux/, Option 2, Step 3.
Press on “Desktop Auto-Resolution” under “ALL CONNECTIONS”
If it is the first time you have used Neurodesktop on this instance, wait until the desktop appears (it may take a few seconds). Otherwise, it should appear instantaneously.
Neurodesk is ready to use! See the tutorials page for advice on how to use Neurodesk.
For an optimal experience, switch your browser to full-screen mode by following the instructions for your browser here (except Mac where full-screen mode is built-in): https://www.thewindowsclub.com/open-chrome-edge-or-firefox-browser-in-full-screen-mode
When done processing your data it is important to stop and remove the container - otherwise the next start or container update will give an error ("… The container name “/neurodesktop” is already in use…")
Click on the terminal from which you ran neurodesktop
Press Ctrl-C
Run:
sudo docker stop neurodesktop && sudo docker rm neurodesktop
You can also connect to this cloud instance from your iOS device :) For this install https://webssh.net/documentation/help/networking/port-forwarding/ and create a tunnel (the tool is free for one connection). Start the docker container in a screen session and then connect to it from your ios device in the browser.
Cloud provider | link |
---|---|
Oracle | https://mri.sbollmann.net/index.php/2020/12/08/run-neurodesk-on-oracle-cloud-free-tier/ |
Open an SSH connection to your cloud instance with the following command
ssh -L 3390:127.0.0.1:3390 USER@IP
Startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 -p 3390:3389 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
Open your RDP client and connect to Computer localhost:3390
Use the following details to login if prompted
To enable VNC and disable RDP, startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc
To enable both VNC and RDP, startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc --rdp
Startup Neurodesktop using the following command:
sudo docker run \
--shm-size=1gb -it --privileged --user=root --name neurodesktop \
-v ~/neurodesktop-storage:/neurodesktop-storage \
-e NB_UID="$(id -u)" -e NB_GID="$(id -g)" \
-p 8888:8888 --network host \
-e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20 --vnc
Download the Tiger VNC client from https://sourceforge.net/projects/tigervnc/files/stable/1.12.0/
Open an SSH connection to your cloud instance with the following command
ssh -L 5901:127.0.0.1:5901 USER@IP
Run the VNC Client and connect to localhost::5901
Enter password
and click Ok.
You can drag-and-drop files into the browser window to get files into Neurodesktop. This will then start a file upload:
To download files from the desktop using the same mechanism you will need to open the guacamole settings by pressing CTRL-ALT-SHIFT (Control-Command-Shift on Mac). This will open a menu on the side:
where you can click on “Shared Drive”:
a click (or double click on Mac) on the file will start the download.
You can browse into folders in the shared drive by clicking (double clicking on Mac) on them. To get back to the base of the shared drive, press on the drive icon in the top left of the side menu (just below the “Shared Drive” title).
To close the side menu, click on CTRL-ALT-SHIFT once more (Control-Command-Shift on Mac).
Note that it is only possible to upload or download one file at a time through this interface. If you have multiple files in a directory we recommend zipping the directory and then transferring one zip archive:
zip files.zip files/
If you are running Neurodesktop on your own hardware there will be a direct connection between the “Storage” folder on the Desktop, which is a link between “/neurodesktop-storage” in neurodesktop and the “neurodesktop-storage” folder on your C-drive (Windows) or home directory (Mac/Linux). This connection can be used for data processing and data transfer.
The -v C:/neurodesktop-storage:/neurodesktop-storage part of the docker command links the directory “neurodesktop-storage” on the “C drive” of your Windows computer to the directory /neurodesktop-storage inside the Desktop environment. Everything you store in there will be available inside the desktop and on the host computer. You can also mount additional directories by adding another -v parameter set (e.g. -v D:/moredata:/data) - this will mount the directory moredata from your D drive to /data inside neurodesktop. Important: the mountpoint inside neurodesktop needs to be named /data, otherwise the applications will not see the files without modifying the SINGULARITY_BINDPATH variable in your .bashrc.
If you are using the NeurodeskApp, you can set an additional storage location through the settings
If you are starting Neurodesk through the command line, here is an example for Windows adding another storage directory:
docker run --shm-size=1gb -it --privileged --user=root --name neurodesktop -v C:/neurodesktop-storage:/neurodesktop-storage -v D:/moredata:/data -p 8888:8888 -e NEURODESKTOP_VERSION=2023-09-20 vnmd/neurodesktop:2023-09-20
Note for Windows users: Connecting network shares from Windows to Neurodesk can cause problems, so be careful when attempting this. Also, be aware that processing large amounts of files stored on a Windows filesystem inside Neurodesk will come with a performance penality due to the file system translation in the background. One option to get around these problems is to directly accessing your storage infrastructure inside Neurodesk.
Another way to get your data into Neurodesktop is to use a cloud storage provider like CloudStor, Dropbox, OneDrive and their sync tools like OwnCloud, Nextcloud or very flexible tools like rclone or davfs2. Another good option could be to utilize Globus for large amounts of data.
Under the menu item “Accessories” you can find “Nextcloud” and “ownCloud” desktop sync clients that you can configure with your cloud service accounts.
To connect for example to your AARNET cloudstor account you can start the ownCloud client and enter the Server Address:
https://cloudstor.aarnet.edu.au/plus/
Then generate an app-password here: https://cloudstor.aarnet.edu.au/plus/settings/personal?sectionid=security
Another option is to directly mount webdav storage. Here is an example how to mount CloudStor into Neurodesktop:
sudo mount -t davfs https://cloudstor.aarnet.edu.au/plus/remote.php/webdav/ /data/
It then asks you for a username and password, which you can generate here: https://cloudstor.aarnet.edu.au/plus/settings/personal?sectionid=security
Rclone is a command line tool that enables the interaction with various cloud services. Here is an example how to setup rclone with CloudStor Aarnet:
rclone config
n
CloudStor
webdav
https://cloudstor.aarnet.edu.au/plus/remote.php/webdav/
2
<hit Enter>
<hit Enter>
<hit Enter>
q
rclone copy --progress --transfers 8 CloudStor:/raw-data-for-science-paper .
rclone copy --progress --transfers 8 . CloudStor:/data-processed
We also provide the globus client, so you can transfer large amounts of data between globus endpoints and Neurodesktop. You can configure it by running the following commands in the Neurodesktop environment:
ml globus
# First run the setup:
globusconnectpersonal -setup
#Follow the instructions in the terminal:
#1) copy the URL into a browser and generate the Native App Authorization Code
#2) then copy this code and paste it in the terminal
#3) then name the endpoint, e.g. Neurodesktop
# Then start the GUI:
globusconnectpersonal -gui
# If the connection fails, reset the permissions on the key file:
chmod 600 /home/jovyan/.globusonline/lta/relay-anonymous-key.pem
# If the connection still fails, start the client like this to get more information
globusconnectpersonal -debug
Then add the directories you want to share with globus, by opening File -> Preferences:
and then add the paths required and hit Save:
Then you can go to the globus file-manager https://app.globus.org/file-manager and your neurodesktop instance will be an endpoint for globus. You can change the path to any location you specified in the Preferences:
It is theoretically possible to mount an SSH target inside Neurodesktop, but it’s not a very reliable way of mounting storage:
sshfs -o allow_root USER@TARGET_HOST:TARGET_PATH SOURCE_PATH
A better option is to use scp
and copy data from an SSH endpoint:
scp /neurodesk/myfile user@remoteserver:/data/
An alternative is to mount the SSHFS target into a parent directory on your local machine or VM and then use the -v option in the docker run command to bind the parent directory of the SSHFS mount. NOTE: the SSHFS has to be mounted to a subdirectory inside a parent directory which is then bound to the docker container. If you directly bind to the mounted directory itself, your Neurodesktop container will stop being able to access it if the SSHFS mount disconnects and will not be able to access it again without restarting the Neurodesktop container.
For example, on a local Linux machine or VM:
sshfs -o allow_root USER@TARGET_HOST:TARGET_PATH/MyData SOURCE_PATH/SSHFS_Mounts/MyData
Then add the following line to the docker run command when starting Neurodesktop (note the rshared flag):
-v /SSHFS_Mounts:/data:rshared \
TIP: If you use key pair authentication instead of password for your SSHFS mount, you can use the reconnect flag to reconnect automatically if the connection drops:
sshfs -o IdentityFile=~/.ssh/id_rsa,allow_root,ServerAliveInterval=5,ServerAliveCountMax=3 USER@TARGET_HOST:TARGET_PATH/MyData SOURCE_PATH/SSHFS_Mounts/MyData