Theia is a configurable web-based IDE
that supports Visual Studio Code compatible extensions. This package was built using the jupyter-server-proxy cookiecutter template.
Try in binder:
pip install illumidesk-theia-proxyThis package's executes the standard theia start --hostname=0.0.0.0 --port=3000 command. This command assumes the theia executable and package.json file required to start the application are globally available.
We recommend building a docker image based on this example to avoid configuration conflicts, particularly when mounting the user's home directory with a volume on a local host.
This extension relies on the Jupyter Notebook to run. Refer to Jupyter's official documentaion for installation instructions.
Install the package with pip:
pip install illumidesk-theia-proxy
The THEIA IDE requires node v10x for compilation. Therefore the version of node that runs theia should also equate to v10x. The jupyter/docker-stacks based images install more recent versions of node. To run theia with a container based on a jupyter/docker-stacks image install NVM and a version 10x of node.
- This package is tested with an image based on one of the Jupyter docker-stacks running with JupyterHub.
THEIArequires Node 10x. The basejupyter docker-stacksimages need some tweaking to make them work withnvmand the correct version ofnode. Refer to this Dockerfile for an example.
IllumiDesk's setup requires docker volume mounts with the local host instance. Files copied to the jovyan home directory during the docker build stage are overriden by the files located on the host directories when running a container based on the image. Therefore theia is installed with a debian package (*.deb) with a docker multi-stage build.
This package assumes the theia command is globally available and that the user's settings are defined in the package.json installed with the *.deb package, which by default is placed in the /usr/share/theia-example/app/package.json directory.
BSD 3-Clause