Add Makefile

`make build` builds the image, including network and volumes, and pulling the notebook image.
This removes the number of manual steps to get started.
This commit is contained in:
Min RK 2016-05-12 16:51:14 +02:00
parent f5453b21a6
commit d3a51902ae
2 changed files with 42 additions and 2 deletions

View File

@ -9,9 +9,9 @@ RUN /opt/conda/bin/pip install \
dockerspawner==0.3.*
# Copy TLS certificate and key
ENV SSL_CERT /srv/jupyterhub/secrets/jupyterhub.cer
ENV SSL_CERT /srv/jupyterhub/secrets/jupyterhub.crt
ENV SSL_KEY /srv/jupyterhub/secrets/jupyterhub.key
COPY ./secrets/*.cer $SSL_CERT
COPY ./secrets/*.crt $SSL_CERT
COPY ./secrets/*.key $SSL_KEY
RUN chmod 700 /srv/jupyterhub/secrets && \
chmod 600 /srv/jupyterhub/secrets/*

40
Makefile Normal file
View File

@ -0,0 +1,40 @@
include .env
.DEFAULT_GOAL=build
network:
@docker network inspect $(DOCKER_NETWORK_NAME) >/dev/null 2>&1 || docker network create $(DOCKER_NETWORK_NAME)
volumes:
@docker volume inspect $(DATA_VOLUME_HOST) >/dev/null 2>&1 || docker volume create --name $(DATA_VOLUME_HOST)
self-signed-cert:
# make a self-signed cert
secrets/jupyterhub.crt:
@echo "Need an SSL certificate in secrets/jupyterhub.crt"
@exit 1
secrets/jupyterhub.key:
@echo "Need an SSL key in secrets/jupyterhub.key"
@exit 1
userlist:
@echo "Add usernames, one per line, to ./userlist, such as:"
@echo " zoe admin"
@echo " wash"
@exit 1
check-files: secrets/jupyterhub.crt secrets/jupyterhub.key userlist
# fail in an informative way if files don't exist
pull:
docker pull $(DOCKER_NOTEBOOK_IMAGE)
build: check-files pull network volumes
docker-compose build
up:
docker-compose up -d
.PHONY: network volumes check-files build up