-
-
Save wdullaer/f1af16bd7e970389bad3 to your computer and use it in GitHub Desktop.
# Ask for the user password | |
# Script only works if sudo caches the password for a few minutes | |
sudo true | |
# Install kernel extra's to enable docker aufs support | |
# sudo apt-get -y install linux-image-extra-$(uname -r) | |
# Add Docker PPA and install latest version | |
# sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 | |
# sudo sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list" | |
# sudo apt-get update | |
# sudo apt-get install lxc-docker -y | |
# Alternatively you can use the official docker install script | |
wget -qO- https://get.docker.com/ | sh | |
# Install docker-compose | |
COMPOSE_VERSION=`git ls-remote https://github.com/docker/compose | grep refs/tags | grep -oE "[0-9]+\.[0-9][0-9]+\.[0-9]+$" | sort --version-sort | tail -n 1` | |
sudo sh -c "curl -L https://github.com/docker/compose/releases/download/${COMPOSE_VERSION}/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose" | |
sudo chmod +x /usr/local/bin/docker-compose | |
sudo sh -c "curl -L https://raw.githubusercontent.com/docker/compose/${COMPOSE_VERSION}/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose" | |
# Install docker-cleanup command | |
cd /tmp | |
git clone https://gist.github.com/76b450a0c986e576e98b.git | |
cd 76b450a0c986e576e98b | |
sudo mv docker-cleanup /usr/local/bin/docker-cleanup | |
sudo chmod +x /usr/local/bin/docker-cleanup |
This is not a recommended way to install if it you can avoid it. If you want to install it on debian you should package it into a deb. You can look at the source deb for it and try to up date that. The project might also contain a build script for deb somewhere.
Awesome Thanks.
Thanks for this script 👍
To overwrite exisiting docker-compose version one may use
COMPOSE_VER=$(curl -s -o /dev/null -I -w "%{redirect_url}\n" https://github.com/docker/compose/releases/latest | grep -oP "[0-9]+(\.[0-9]+)+$")
&&
curl -o $(which docker-compose) -L https://github.com/docker/compose/releases/download/$COMPOSE_VER/docker-compose-$(uname -s)-$(uname -m)
Just if there allready is a docker-compose binary
But this is not fully tested.
Hi there, thank you for taking the pain away from installing the latest docker version.
One little improvement though:
The script is dependent on git being installed.
Maybe add something like:
hash git 2>/dev/null || { echo >&2 "I require git but it's not installed. Aborting..."; exit 1;}
Oh my dayum! This script is delicious :)
Thank you sir.
A little warn here : please consider using -E (extended regex) instead of -P (Perl regex) in your grep expression. => Some grep may not support -P : busybox for example does not support this flag.
Nice script, tkx.
However, sometimes the versions of docker-compose are not ordered and so the version downloaded is not the last one.
This fixes it:
COMPOSE_VERSION=`git ls-remote https://github.com/docker/compose | grep refs/tags | grep -oP "[0-9]+\.[0-9][0-9]+\.[0-9]+$" | sort --version-sort | tail -n 1`
I haven't updated this in a long time. I'm happy to see it still works.
Thanks for the feedback, I'll add your fix in.
Very useful script, thanks for the job, hope you have a good day!
@madtechsupport here;