Skip to main content

Deploying with Docker

To run Covalent as a Docker container using public images, do the following.

Prerequisites

Install and run Docker on your remote host.

Procedure

1. Get the latest Docker image for Covalent:

docker pull public.ecr.aws/covalent/covalent:latest

Note

To get the current stable image of Covalent, use stable instead of latest.

2. Start Covalent:

docker container run -d --name covalent -p 48008:48008 public.ecr.aws/covalent/covalent:latest

3. To view the Covalent GUI, go to http://localhost:48008.

4. Configure Covalent inside the container with environment variables.

The following table lists the environment variables available to customize Covalent’s execution environment at startup:

Covalent configuration environment variables

Environment Variable        Description
COVALENT_ROOTRoot directory for the covalent process 
COVALENT_CONFIG_DIR  Directory that covalent searches for its configuration file, covalent.conf  
COVALENT_PLUGINS_DIRPath where covalent looks to load any installed executor plugins  
COVALENT_DATABASE     Path to covalent’s backend SQLite3 database  
COVALENT_LOGDIRPath to covalent’s log file  
COVALENT_CACHE_DIR     Directory used by covalent to store temporary objects during runtime  
COVALENT_DATA_DIRPath to covalent’s database directory  
COVALENT_RESULTS_DIR      Directory in which to store intermediate result objects  
COVALENT_SVC_PORTTCP port on which covalent runs  
COVALENT_SERVER_IFACE_ANY      Boolean flag that causes covalent to listen on all network interfaces on the host  
COVALENT_NUM_WORKERSNumber of Dask workers in Covalent’s default cluster 
COVALENT_MEM_PER_WORKER     Memory limit for each Dask worker  
COVALENT_THREADS_PER_WORKERNumber of threads with which to start each worker  

5. For example, to start Covalent with two workers on port 8000:

docker container run --name covalent -p 8000:8000 -e COVALENT_NUM_WORKERS=2 -e COVALENT_SVC_PORT=8000 public.ecr.aws/covalent/covalent:latest