diff --git a/components/jupyterhub/docker/Dockerfile b/components/jupyterhub/docker/Dockerfile index 3ce545b86ac..79ea5d9d8c1 100644 --- a/components/jupyterhub/docker/Dockerfile +++ b/components/jupyterhub/docker/Dockerfile @@ -12,18 +12,10 @@ # See the License for the specific language governing permissions and # limitations under the License. -FROM python:3.6 +FROM jupyterhub/jupyterhub:0.9 -RUN apt-get update && \ - apt-get install -y npm nodejs-legacy - -RUN npm install -g configurable-http-proxy && \ - pip3 install --no-cache-dir \ - notebook \ - jupyterhub==0.8.1 \ - jupyterhub-kubespawner==0.7.1 \ +RUN pip3 install --no-cache-dir \ + jupyterhub-kubespawner==0.8.1 \ jupyterhub-dummyauthenticator \ jhub_remote_user_authenticator \ - oauthenticator - -ENTRYPOINT jupyterhub + oauthenticator \ No newline at end of file diff --git a/components/jupyterhub/docker/Makefile b/components/jupyterhub/docker/Makefile index 77231e77119..8ba1d188e41 100644 --- a/components/jupyterhub/docker/Makefile +++ b/components/jupyterhub/docker/Makefile @@ -12,7 +12,20 @@ # See the License for the specific language governing permissions and # limitations under the License. -VERSION=1.0.1 +# List any changed files. We only include files in the image directory. +# because that is the code in the docker image. +CHANGED_FILES := $(shell git diff-files --relative=components/jupyterhub) + +ifeq ($(strip $(CHANGED_FILES)),) +# Changed files is empty; not dirty +# Don't include --dirty because it could be dirty if files outside the ones we care +# about changed. +VERSION := $(shell date +v%Y%m%d)-$(shell git describe --always) +else +VERSION := $(shell date +v%Y%m%d)-$(shell git describe --always --dirty)-$(shell git diff | shasum -a256 | cut -c -6) +endif + + PROJECT_ID=kubeflow GCR_PROJECT=gcr.io/${PROJECT_ID} DOCKERHUB_PROJECT=hub.docker.com/r/${PROJECT_ID} diff --git a/kubeflow/core/prototypes/all.jsonnet b/kubeflow/core/prototypes/all.jsonnet index 191f26e25f7..f96bbddcee2 100644 --- a/kubeflow/core/prototypes/all.jsonnet +++ b/kubeflow/core/prototypes/all.jsonnet @@ -11,7 +11,7 @@ // @optionalParam tfDefaultImage string null The default image to use for TensorFlow. // @optionalParam tfJobUiServiceType string ClusterIP The service type for the UI. // @optionalParam jupyterHubServiceType string ClusterIP The service type for Jupyterhub. -// @optionalParam jupyterHubImage string gcr.io/kubeflow/jupyterhub-k8s:1.0.1 The image to use for JupyterHub. +// @optionalParam jupyterHubImage string gcr.io/kubeflow/jupyterhub-k8s:v20180531-3bb991b1 The image to use for JupyterHub. // @optionalParam jupyterHubAuthenticator string null The authenticator to use // @optionalParam jupyterNotebookPVCMount string null Mount path for PVC. Set empty to disable PVC // @optionalParam reportUsage string false Whether or not to report Kubeflow usage to kubeflow.org.