diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1f4325c40a55154544d7238270051d31737be25b..5f876c4e1909d37bbf269e03dcb6150a17f39bd2 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,3 +1,9 @@
+---
+include:
+  - project: 'ghsc/hazdev/pipeline-build-template'
+    ref: 'master'
+    file: 'templates/library.yml'
+
 image: ${DEVOPS_REGISTRY}usgs/centos:latest
 
 stages:
@@ -24,11 +30,10 @@ variables:
   cache: {}
   extends:
     - .adjust_image_names
+    - .dind
+    - .production
+    - .staging
   image: ${CODE_REGISTRY}/ghsc/hazdev/cloud-formation/hazdev-build-runner:latest
-  only:
-    - master@ghsc/geomag/geomag-algorithms
-    - production@ghsc/geomag/geomag-algorithms
-    - tags@ghsc/geomag/geomag-algorithms
   script:
     - docker build
       --pull
@@ -109,10 +114,6 @@ variables:
   tags:
     - mage01
 
-.staging:
-  only:
-    - master@ghsc/geomag/geomag-algorithms
-    - tags@ghsc/geomag/geomag-algorithms
 ## --------------------------------------------------
 # Test Stage
 ## --------------------------------------------------
diff --git a/Dockerfile b/Dockerfile
index 547ea665c0537ea768e3fc84a2f54722fcd819cc..1a4e4487ce93bf4ca4e7dde9c795494e09a652de 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,6 +1,6 @@
 ARG FROM_IMAGE=usgs/centos:latest
 
-FROM ${FROM_IMAGE}
+FROM ${FROM_IMAGE} as conda
 LABEL maintainer="Jeremy Fee <jmfee@usgs.gov>"
 
 ARG GIT_BRANCH_NAME=none
@@ -35,6 +35,29 @@ RUN conda config --set ssl_verify $SSL_CERT_FILE \
     && yum install -y which \
     && yum clean all
 
+
+################################################################################
+## Development image
+
+# build by running
+# docker build -t geomag-algorithms-development --target development .
+
+FROM conda as development
+
+# install dependencies via pipenv
+WORKDIR /geomag-algorithms
+COPY Pipfile /geomag-algorithms
+RUN pipenv --site-packages install --dev --skip-lock
+
+# copy library (ignores set in .dockerignore)
+COPY . /geomag-algorithms
+
+
+################################################################################
+## Production image
+
+FROM conda
+
 RUN useradd \
     -c 'Docker image user' \
     -m \