From 3ea2216a5ddd2b6c6cbf5904805a0e706403e2ea Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:08:01 +0100 Subject: [PATCH 01/19] Try to fix build --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 074df535d..77ffb5542 100644 --- a/Makefile +++ b/Makefile @@ -26,6 +26,7 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update + echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="docker-engine python3.4-venv"; \ else \ From 18e549e386275c3ab2d330ad7d2bcd481a33ce6f Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:10:34 +0100 Subject: [PATCH 02/19] Try 2 --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 77ffb5542..fb5de7eb7 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,7 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update - echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list + sudo echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="docker-engine python3.4-venv"; \ else \ From 33e4dc2719c9d30c3f063b1d4b938b014b8001eb Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:19:29 +0100 Subject: [PATCH 03/19] Try 3 --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index fb5de7eb7..10bccd4c6 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,7 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update - sudo echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list + sudo echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | sudo tee /etc/apt/sources.list.d/docker.list if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="docker-engine python3.4-venv"; \ else \ From 37862c0b41fdf2b13380206f1e09852062ef519d Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:25:55 +0100 Subject: [PATCH 04/19] Print ubuntu version --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 10bccd4c6..a1f74bc22 100644 --- a/Makefile +++ b/Makefile @@ -26,6 +26,7 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update + lsb_release -c sudo echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | sudo tee /etc/apt/sources.list.d/docker.list if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="docker-engine python3.4-venv"; \ From 98c8539bcfcb2017b06e62eb26e84990a981f1fe Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:28:53 +0100 Subject: [PATCH 05/19] Try 4 --- Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Makefile b/Makefile index a1f74bc22..1945527c3 100644 --- a/Makefile +++ b/Makefile @@ -26,8 +26,7 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update - lsb_release -c - sudo echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | sudo tee /etc/apt/sources.list.d/docker.list + sudo echo "deb https://apt.dockerproject.org/repo trusty main" | sudo tee /etc/apt/sources.list.d/docker.list if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="docker-engine python3.4-venv"; \ else \ From 23d6a62f5478db8dfed3118f02caedd1e8fddbaa Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:31:59 +0100 Subject: [PATCH 06/19] Last try --- Makefile | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/Makefile b/Makefile index 1945527c3..908762a0e 100644 --- a/Makefile +++ b/Makefile @@ -26,13 +26,7 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update - sudo echo "deb https://apt.dockerproject.org/repo trusty main" | sudo tee /etc/apt/sources.list.d/docker.list - if [ `lsb_release -rs` = "14.04" ]; then \ - plat_packages="docker-engine python3.4-venv"; \ - else \ - plat_packages="docker.io python3-venv"; \ - fi; \ - sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y $$plat_packages nodejs python3-pip + sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y docker.io python3-venv nodejs python3-pip node --version npm --version npm install From 03dd641e0e61846108d92e6338abf2dd2e736f49 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:37:06 +0100 Subject: [PATCH 07/19] Very last try --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 908762a0e..accfc3af3 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,7 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update - sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y docker.io python3-venv nodejs python3-pip + sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y docker.io python3.4-venv nodejs python3-pip node --version npm --version npm install From 24d3eeec77eb898851a9c63b2fb27a2c2da3008f Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:52:24 +0100 Subject: [PATCH 08/19] Print docker version --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index accfc3af3..5e0af0dba 100644 --- a/Makefile +++ b/Makefile @@ -27,6 +27,7 @@ deps: curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y docker.io python3.4-venv nodejs python3-pip + docker --version node --version npm --version npm install From 48624f5bf414f1b39f668b26c672f0c77283aa79 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 17:54:19 +0100 Subject: [PATCH 09/19] Clean change --- Makefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 5e0af0dba..8a7397d2f 100644 --- a/Makefile +++ b/Makefile @@ -26,7 +26,12 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - -sudo apt-get -qq update - sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y docker.io python3.4-venv nodejs python3-pip + if [ `lsb_release -rs` = "14.04" ]; then \ + plat_packages="docker.io python3.4-venv"; \ + else \ + plat_packages="docker.io python3-venv"; \ + fi; \ + sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y $$plat_packages nodejs python3-pip docker --version node --version npm --version From f28ae295ad2ce71b6de17fe7eee8425782805c45 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 18:06:55 +0100 Subject: [PATCH 10/19] Change version of docker-py --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index db94425f3..c705cbcd6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ tornado==4.3 requests==2.10.0 # We want 1.8 because 1.10 uses API version 1.24 and the docker server # on ubuntu uses 1.23, so they don't like each other. -docker-py==1.8 +docker-py==1.22 escapism==0.0.1 jinja2==2.8 git+git://github.com/jupyterhub/jupyterhub.git@2d1a45f0190059ef436c2f97dc8d6e391eb2d139#egg=jupyterhub From 591f0565d849b4bf50f4a50d35e92b1ca56eef91 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Thu, 22 Jun 2017 18:13:00 +0100 Subject: [PATCH 11/19] Undo last commit --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index c705cbcd6..db94425f3 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ tornado==4.3 requests==2.10.0 # We want 1.8 because 1.10 uses API version 1.24 and the docker server # on ubuntu uses 1.23, so they don't like each other. -docker-py==1.22 +docker-py==1.8 escapism==0.0.1 jinja2==2.8 git+git://github.com/jupyterhub/jupyterhub.git@2d1a45f0190059ef436c2f97dc8d6e391eb2d139#egg=jupyterhub From 227efff1f297c7fbeed8794ee0b02989eba37155 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Fri, 23 Jun 2017 10:00:03 +0100 Subject: [PATCH 12/19] Try to install the previous version of docker --- Makefile | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 8a7397d2f..ec4ff0496 100644 --- a/Makefile +++ b/Makefile @@ -11,9 +11,9 @@ venv: .PHONY: dockerengine dockerengine: sudo apt-get -qq update - sudo apt-get -qq install apt-transport-https ca-certificates + sudo apt-get -qq install apt-transport-https ca-certificates software-properties-common sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D - sudo bash -c 'echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" > /etc/apt/sources.list.d/docker.list' + sudo apt-get remove docker docker-engine sudo apt-get -qq update .PHONY: deps @@ -25,9 +25,15 @@ deps: false; \ fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - + curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - + sudo add-apt-repository \ + "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ + $(lsb_release -cs) \ + stable" -sudo apt-get -qq update if [ `lsb_release -rs` = "14.04" ]; then \ - plat_packages="docker.io python3.4-venv"; \ + sudo apt-get install docker-ce=17.05.0~ce-0~ubuntu-$(lsb_release -cs) + plat_packages="linux-image-extra-$(uname -r) linux-image-extra-virtual python3.4-venv"; \ else \ plat_packages="docker.io python3-venv"; \ fi; \ From 5bd8ce6e4ad1fa21950e344ee4158e3c5d7c6ad8 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Fri, 23 Jun 2017 10:05:15 +0100 Subject: [PATCH 13/19] Fix makefile --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index ec4ff0496..1575743c9 100644 --- a/Makefile +++ b/Makefile @@ -31,11 +31,11 @@ deps: $(lsb_release -cs) \ stable" -sudo apt-get -qq update + sudo apt-get install docker-ce=17.05.0~ce-0~ubuntu-$(lsb_release -cs) if [ `lsb_release -rs` = "14.04" ]; then \ - sudo apt-get install docker-ce=17.05.0~ce-0~ubuntu-$(lsb_release -cs) plat_packages="linux-image-extra-$(uname -r) linux-image-extra-virtual python3.4-venv"; \ else \ - plat_packages="docker.io python3-venv"; \ + plat_packages="python3-venv"; \ fi; \ sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y $$plat_packages nodejs python3-pip docker --version From 29ef8aad7a672dd27fd270790afc78f1099e1e86 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Fri, 23 Jun 2017 10:23:19 +0100 Subject: [PATCH 14/19] Fix docker-ce version --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 1575743c9..8667102fa 100644 --- a/Makefile +++ b/Makefile @@ -31,7 +31,7 @@ deps: $(lsb_release -cs) \ stable" -sudo apt-get -qq update - sudo apt-get install docker-ce=17.05.0~ce-0~ubuntu-$(lsb_release -cs) + sudo apt-get install docker-ce=17.03.0~ce-0~ubuntu-$(lsb_release -cs) if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="linux-image-extra-$(uname -r) linux-image-extra-virtual python3.4-venv"; \ else \ From 78be6fc64e0f2986a6d237429e13441e818bdfea Mon Sep 17 00:00:00 2001 From: martinRenou Date: Fri, 23 Jun 2017 10:30:01 +0100 Subject: [PATCH 15/19] Try to fix command --- Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 8667102fa..88bb390e5 100644 --- a/Makefile +++ b/Makefile @@ -26,9 +26,10 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - + version_name=(shell lsb_release -cs) sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ - $(lsb_release -cs) \ + $(version_name) \ stable" -sudo apt-get -qq update sudo apt-get install docker-ce=17.03.0~ce-0~ubuntu-$(lsb_release -cs) From 18b84b32078f55a73d0e18b3ce0149eca13c347a Mon Sep 17 00:00:00 2001 From: martinRenou Date: Fri, 23 Jun 2017 10:49:37 +0100 Subject: [PATCH 16/19] Fix makefile --- Makefile | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 88bb390e5..6aaa0dda0 100644 --- a/Makefile +++ b/Makefile @@ -26,15 +26,14 @@ deps: fi curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - - version_name=(shell lsb_release -cs) sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ - $(version_name) \ + `lsb_release -cs` \ stable" -sudo apt-get -qq update - sudo apt-get install docker-ce=17.03.0~ce-0~ubuntu-$(lsb_release -cs) + sudo apt-get install docker-ce=17.03.0~ce-0~ubuntu-`lsb_release -cs` if [ `lsb_release -rs` = "14.04" ]; then \ - plat_packages="linux-image-extra-$(uname -r) linux-image-extra-virtual python3.4-venv"; \ + plat_packages="linux-image-extra-`uname -r` linux-image-extra-virtual python3.4-venv"; \ else \ plat_packages="python3-venv"; \ fi; \ From 4aeca513b820c525982942465c37eacbd08f6ec4 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Fri, 23 Jun 2017 10:53:26 +0100 Subject: [PATCH 17/19] Display docker version --- Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/Makefile b/Makefile index 6aaa0dda0..5c39a87d6 100644 --- a/Makefile +++ b/Makefile @@ -31,6 +31,7 @@ deps: `lsb_release -cs` \ stable" -sudo apt-get -qq update + docker --version sudo apt-get install docker-ce=17.03.0~ce-0~ubuntu-`lsb_release -cs` if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="linux-image-extra-`uname -r` linux-image-extra-virtual python3.4-venv"; \ From aee3dc298aa0b034eaa75b840961961719734433 Mon Sep 17 00:00:00 2001 From: martinRenou Date: Fri, 23 Jun 2017 10:55:55 +0100 Subject: [PATCH 18/19] Try --- Makefile | 2 -- 1 file changed, 2 deletions(-) diff --git a/Makefile b/Makefile index 5c39a87d6..88962ab25 100644 --- a/Makefile +++ b/Makefile @@ -31,8 +31,6 @@ deps: `lsb_release -cs` \ stable" -sudo apt-get -qq update - docker --version - sudo apt-get install docker-ce=17.03.0~ce-0~ubuntu-`lsb_release -cs` if [ `lsb_release -rs` = "14.04" ]; then \ plat_packages="linux-image-extra-`uname -r` linux-image-extra-virtual python3.4-venv"; \ else \ From e87b44497e75c0b06ce54cd13566b8f8b6cda06a Mon Sep 17 00:00:00 2001 From: martinRenou Date: Mon, 26 Jun 2017 11:00:53 +0000 Subject: [PATCH 19/19] Reviews --- Makefile | 20 ++++---------------- doc/source/deployment.rst | 14 +++++--------- 2 files changed, 9 insertions(+), 25 deletions(-) diff --git a/Makefile b/Makefile index 88962ab25..fcaf4265f 100644 --- a/Makefile +++ b/Makefile @@ -6,16 +6,6 @@ venv: @echo "----------------------------" python3 -m venv venv -# Only use this on ubuntu-14.04 to retrieve a recent version of docker-engine. The docker.io default shipment with Trusty is -# too old for our software. -.PHONY: dockerengine -dockerengine: - sudo apt-get -qq update - sudo apt-get -qq install apt-transport-https ca-certificates software-properties-common - sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D - sudo apt-get remove docker docker-engine - sudo apt-get -qq update - .PHONY: deps deps: @echo "Installing apt dependencies" @@ -24,19 +14,17 @@ deps: echo "ERROR: Cannot run on non-Linux systems"; \ false; \ fi + sudo apt-get remove docker docker-engine curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - + sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ `lsb_release -cs` \ stable" -sudo apt-get -qq update - if [ `lsb_release -rs` = "14.04" ]; then \ - plat_packages="linux-image-extra-`uname -r` linux-image-extra-virtual python3.4-venv"; \ - else \ - plat_packages="python3-venv"; \ - fi; \ - sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y $$plat_packages nodejs python3-pip + sudo apt-get -qq install apt-transport-https ca-certificates software-properties-common + sudo apt-get -qq install -o Dpkg::Options::="--force-confold" --force-yes -y linux-image-extra-`uname -r` linux-image-extra-virtual python3.4-venv nodejs python3-pip docker --version node --version npm --version diff --git a/doc/source/deployment.rst b/doc/source/deployment.rst index 9965fa953..b9f90a416 100644 --- a/doc/source/deployment.rst +++ b/doc/source/deployment.rst @@ -18,25 +18,21 @@ Deployment of the complete system in a single machine/VM. #. Make sure that you are obtaining a recent version of Docker, at least 1.12. Full instructions available at `the Docker website `_. A Makefile rule is provided for convenience. **NOTE: this overwrites the docker.list file you might have setup in your - /etc/apt/sources.d/ directory**. You might be prompted for the root password to execute this:: - - make dockerengine - -#. Install dependencies. You might be prompted for the root password to execute this:: + /etc/apt/sources.d/ directory**. You might be prompted for the root password to execute this:: make deps #. Make sure your docker server is running, and your user is allowed to connect to the docker server (check accessibility of `/var/run/docker.sock`). You obtain this by running:: - + sudo service docker start sudo addgroup your_username docker - + and logging out and in again. Check if your docker server is operative by running:: docker info - + #. Create and activate a virtual environment, then set the appropriate PATH for the node modules:: make venv @@ -44,7 +40,7 @@ Deployment of the complete system in a single machine/VM. export PATH=`node bin`:$PATH #. Install the python dependencies:: - + make pythondeps #. And install the package itself::