-
Notifications
You must be signed in to change notification settings - Fork 39
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Feature Request: Docker Support for Testing and Development
Problem
Setting up element-deeplabcut for testing currently requires:
- A Conda environment with a specific Python version
- A running MySQL database (docker)
- A full DeepLabCut installation
- Manual setup of
dj_local_conf.json
This makes it difficult to:
- Run tests in CI/CD pipelines
- Onboard new contributors
- Ensure fully reproducible development environments
- Avoid environment drift between machines
Proposed Solution
Add first-class Docker support to streamline testing and development.
1. Dockerfile
- Base on the official DeepLabCut image
- Install
element-deeplabcut, dependencies, and test utilities - Include non-GPU mode for lightweight smoke tests
2. docker-compose.yaml
A multi-service setup including:
- MySQL (with persistent volume)
- Client container for running tests and development commands
- Optional volume mounts for test videos and local code
3. Makefile
Convenient shortcuts:
make up— start MySQL + clientmake test-trained— run trained-model workflow testsmake test-pretrained— run multi-animal/pretrained testsmake shell— open an interactive development shell inside the client container
_Additional Context
The official DeepLabCut Docker image should be used as the base.
The database should persist between runs using local Docker volumes.
Test videos and sample DLC outputs should be mountable as volumes during development._
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request