Orion comes configured and ready to be distributed and run as a docker image which starts a jupyter notebook already configured to use orion, with all the required dependencies already installed.
The only requirement in order to run the Orion Docker image is to have Docker installed and that the user has enough permissions to run it.
Installation instructions for any possible system compatible can be found here
Additionally, the system that builds the Orion Docker image will also need to have a working internet connection that allows downloading the base image and the additional python depenedencies.
After having cloned the Orion repository, all you have to do in order to build the Orion Docker Image is running this command:
make docker-jupyter-build
After a few minutes, the new image, called orion-jupyter
, will have been built into the system
and will be ready to be used or distributed.
Once the orion-jupyter
image is built, it can be distributed in several ways.
The simplest way to distribute the recently created image is using a registry.
In order to do so, we will need to have write access to a public or private registry (remember to login!) and execute these commands:
docker tag orion-jupyter:latest your-registry-name:some-tag
docker push your-registry-name:some-tag
Afterwards, in the receiving machine:
docker pull your-registry-name:some-tag
docker tag your-registry-name:some-tag orion-jupyter:latest
If the distribution of the image has to be done offline for any reason, it can be achieved using the following command.
In the system that already has the image:
docker save --output orion-jupyter.tar orion-jupyter
Then copy over the file orion-jupyter.tar
to the new system and there, run:
docker load --input orion-jupyter.tar
After these commands, the orion-jupyter
image should be available and ready to be used in the
new system.
Once the orion-jupyter
image has been built, pulled or loaded, it is ready to be run.
This can be done in two ways:
If the Orion source code is available in the system, running the image is as simple as running this command from within the root of the project:
make docker-jupyter-run
This will start a jupyter notebook using the docker image, which you can access by pointing your browser at http://127.0.0.1:8888
In this case, the local version of the project will also mounted within the Docker container,
which means that any changes that you do in your local code will immediately be available
within your notebooks, and that any notebook that you create within jupyter will also show
up in your notebooks
folder!
If the Orion source code is not available in the system and only the Docker Image is, you can still run the image by using this command:
docker run -ti -p8888:8888 orion-jupyter
In this case, the code changes and the notebooks that you create within jupyter will stay inside the container and you will only be able to access and download them through the jupyter interface.