Docker Run Command
PROTÉGÉ PD runs in a Docker container with Python 3.10 and includes a minimal interactive web interface built with Dash. Here’s the complete command structure:Command Breakdown
Container Lifecycle
Automatically removes the container when it exits. This ensures no orphaned containers accumulate on your system after each run.
Assigns a friendly name to the running container for easier reference and management.
Volume Mounting
Binds your local file system to the container’s file system, allowing PROTÉGÉ to access input files and write output files.Parameters:
type=bind- Specifies a bind mount (direct mapping)source=/your/files/path/- Your local directory containing FASTA filestarget=/root/.- Container’s working directory where files are accessible
Port Mapping
Maps the container’s web interface port to your local machine.Format:
host_ip:host_port:container_port127.0.0.1- Localhost only (secure, not accessible from network)8050(first) - Port on your local machine8050(second) - Port inside the container where Dash runs
After running PROTÉGÉ, access the web interface at http://127.0.0.1:8050 in your browser.
CPU Allocation
Limits the number of CPU cores the container can use. PROTÉGÉ performs sequence alignment and primer design, which benefits from multiple cores.Recommendations:
- Small datasets (< 50 sequences): 2-4 CPUs
- Medium datasets (50-200 sequences): 4-8 CPUs
- Large datasets (> 200 sequences): 8+ CPUs
Working Directory
The container’s working directory is/root/. All input files specified with -s are relative to this directory, which maps to your mounted source path.
Example:
Common Usage Patterns
Basic Run (Default Parameters)
Custom Consensus Threshold
This sets consensus percentage to 85% instead of the default 90%.
Longer Primers with Verbose Output
Uses 10-codon primers (30 nucleotides) and enables verbose logging.
Disable Gap Consensus
Viewing Help
Accessing the Web Interface
Once PROTÉGÉ starts processing:- Watch the terminal for processing messages
- When you see “Dash is running on http://0.0.0.0:8050/”
- Open your browser to http://127.0.0.1:8050
- The interactive primer visualization interface will load
The web interface provides interactive visualizations of primer candidates and allows you to download results.
Stopping PROTÉGÉ
To stop the running container:- Press
Ctrl+Cin the terminal where Docker is running - Or in another terminal:
docker stop protege
--rm flag ensures the container is automatically removed after stopping.
Troubleshooting
Container fails to start
Container fails to start
Check:
- Docker is installed and running
- You’ve pulled the correct image version
- Port 8050 is not already in use
Cannot find input file
Cannot find input file
Check:
- The file exists in your mounted directory
- You’re using the filename only, not the full path
- File permissions allow reading
Out of memory errors
Out of memory errors
Increase Docker memory allocation:
- Docker Desktop: Settings → Resources → Memory
- Recommended: 4GB+ for large datasets
Slow performance
Slow performance
Optimize:
- Increase
--cpusvalue (up to your system’s core count) - Ensure Docker has adequate memory allocated
- Close other resource-intensive applications