diff --git a/.docker-registry/auth/htpasswd b/.docker-registry/auth/htpasswd
new file mode 100644
index 0000000000000000000000000000000000000000..737dedc9becc6546a51f3d890a1c6b682ac0f3a4
--- /dev/null
+++ b/.docker-registry/auth/htpasswd
@@ -0,0 +1,2 @@
+mweise:$2y$05$eC9011766P4kKvgUYeZ1d.4AISb6IEge3zEFbrZGXXUa8BKIfUPra
+
diff --git a/.docker-registry/create b/.docker-registry/create
new file mode 100755
index 0000000000000000000000000000000000000000..a076148774868034107f23f94fbc1912a13f97b7
--- /dev/null
+++ b/.docker-registry/create
@@ -0,0 +1,9 @@
+#!/bin/bash
+if [ $# -ne 2 ]; then
+  echo "USAGE: ./create username password"
+  exit 1
+fi
+
+docker run \
+  --entrypoint htpasswd \
+  httpd:2 -Bbn $1 $2 > auth/htpasswd
\ No newline at end of file
diff --git a/.docker-registry/run b/.docker-registry/run
old mode 100644
new mode 100755
index a07b131bc38d2757122c76666f9803c9b157d476..0bfa4739648d945d4a45d7238adee4eab4f6ebca
--- a/.docker-registry/run
+++ b/.docker-registry/run
@@ -1,2 +1,11 @@
 #!/bin/bash
-docker run -d -p 5000:5000 -v /var/lib/docker/registry:/var/lib/registry registry:2
\ No newline at end of file
+docker run -d \
+  -p 5000:5000 \
+  --restart=always \
+  --name registry \
+  -v "$(pwd)"/auth:/auth \
+  -e "REGISTRY_AUTH=htpasswd" \
+  -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
+  -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
+  -v "$(pwd)"/certs:/certs \
+  registry:2
\ No newline at end of file