diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..a69f30b397ee35954475f402bbdbdf3534a70def
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,7 @@
+FROM continuumio/miniconda3
+RUN apt-get install make
+WORKDIR /code
+COPY environment.yml environment.yml
+RUN conda env update
+COPY . .
+RUN conda run -n data make python-setup-develop
diff --git a/Makefile b/Makefile
index edd72a6e5f145fb12314b5b0f941c2d55d79ecea..9eb4e4428d66310bdd2a95bf370b58b4782d8694 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,5 @@
+SHELL := /bin/bash
+
 all: dev metadata build
 
 .PHONY: check-conda
@@ -6,7 +8,7 @@ check-conda:
 		(echo "Conda does not appear to be installed; please install it and try again"; exit 1)
 	@[ "${CONDA_PREFIX}" != "" ] || \
 		(echo "Conda does not appear to be active; please activate 'data' and try again"; exit 1)
-	@[ "${CONDA_DEFAULT_ENV}" == "data" ] || \
+	@[ "${CONDA_DEFAULT_ENV}" = "data" ] || \
 		(echo "Wrong conda environment '${CONDA_DEFAULT_ENV}' appears to be active; please deactivate, activate 'data' and try again"; exit 1)
 
 .PHONY: metadata
@@ -26,7 +28,10 @@ ${CONDA_PREFIX}: environment.yml
 	touch $@
 
 .PHONY: dev
-dev: check-conda ${CONDA_PREFIX} alembic-update
+dev: check-conda ${CONDA_PREFIX} alembic-update python-setup-develop
+
+.PHONY: python-setup-develop
+python-setup-develop: check-conda ${CONDA_PREFIX}
 	for dir in shared/{schema,workspaces,channels} services/{workflow,capability} apps/cli/{utilities/wf_monitor,executables/{null,vulture}}; do \
   		pushd $$dir; \
   		python setup.py develop; \
diff --git a/docker-compose.yml b/docker-compose.yml
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/environment.yml b/environment.yml
index 558e24e2ef0fed43c337b1caa7cd116eed052354..db6808252d40e5de0f17b371bcda842d0fcfd5f2 100644
--- a/environment.yml
+++ b/environment.yml
@@ -1,6 +1,7 @@
 name: data
 channels:
   - https://builder.aoc.nrao.edu/conda
+  - conda-forge
   - defaults
 dependencies:
   - alembic=1.4
diff --git a/services/workflow/Dockerfile b/services/workflow/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..a8e180d6626d791b48de9f6031b15be9ed48973d
--- /dev/null
+++ b/services/workflow/Dockerfile
@@ -0,0 +1,6 @@
+FROM nrao:workspaces-base
+WORKDIR /code
+COPY . .
+RUN conda run -n data python setup.py develop
+EXPOSE 3456
+CMD ["conda", "run", "-n", "data", "pserve", "development.ini"]