Building DE tools and apps¶
Once you build your Docker image (following the guidelines), the next step is building the Tool.
For this you’ll need a Docker image name, any port numbers
PORT, User ID
UID, working directory
The Docker image of your tool is mandatory and it should be available on public registries such as Dockerhub or quay.io. Alternatively you can provide us the Dockerfile and we will build the Docker image for you. If there is no Dockerfile for the tool that you are interested in, then tell us what tool you are interesting in making us as VICE app.
Add Tool in DE¶
The final step in building the VICE tool is to fill up the “Add Tool” form in DE.
Brifely here are the following steps.
- Log in CyVerse Discovery Environment
- Click on the Apps window and click Manage Tools button on the far right hand side of the window
- Click on Tools button and then finally Add Tools button
You’ll see a Add Tool form like this
Tool nameis the name of the tool. This will appear in the DE’s tool listing dialog. This is mandatory field. Eg. “jupyterlab-circos”
descriptionis a brief description of the tool. This will appear in the DE’s tool listing dialog. Eg. “Circos is a software package for visualizing data and information that was created by Martin Krzywinski”
versionis the version of the tool. This will appear in the DE’s tool listing dialog. This is mandatory field. Eg. “1.0”
Image nameis the name of the image specifier minus the image tag. The image must exist on Dockerhub or quay.io. This is mandatory field. E.g “fomightez/circos-vice”
Tagis the image tag. If you don’t specify the tag, the DE will look for the “latest” tag which is the default tag.
Docker Hub URLis the url of the image on the Dockerhub. E.g https://hub.docker.com/r/fomightez/circos-vice
Typeis the type of Tool. For VICE apps, chose “interactive”.
OSG Image Pathis path of the image on the OSG. You can skip this for interactive tools.
Entrypointis the Entrypoint for your tool. Entrypoint should be present in the Docker image and if not, you should specify it here.
Working Directorythis is the working directory of the tool and must be filled in with the value you gathered above. E.g /home/jovyan/vice
UIDis a number and must be filled in with the value you gathered from above. E.g 1000
Max CPU Coresis the number of cores for your tool. Eg. 16
Memory Limitis the memory for your tool. Eg. 64 GB
Min Disk Spaceis the minimum disk space. Eg. 200 GB
Container Portsmust be a list of maps with only a single entry. The key in that entry must be container_port and should be filled in with the number value you gathered above.
It is strongly recommended you do not set the bind to host as true for your added ports when creating a new App**
Creating VICE app for your tool¶
To create a new app, follow the instructions in here
For VICE apps, be sure to check the box “Do not pass this argument to the command line” for each option you add (for VICE, this is usually just input files and folders.
Fix or improve this documentation: