2013-03-12 06:03:22 +04:00
|
|
|
#!/bin/sh
|
2013-03-12 10:13:08 +04:00
|
|
|
# This script is meant for quick & easy install via 'curl URL-OF-SCRIPT | sh'
|
2013-03-12 10:37:38 +04:00
|
|
|
# Original version by Jeff Lindsay <progrium@gmail.com>
|
|
|
|
# Revamped by Jerome Petazzoni <jerome@dotcloud.com>
|
|
|
|
#
|
2013-08-09 04:02:59 +04:00
|
|
|
# This script canonical location is https://get.docker.io/; to update it, run:
|
2013-03-12 10:37:38 +04:00
|
|
|
# s3cmd put -m text/x-shellscript -P install.sh s3://get.docker.io/index
|
2013-02-26 00:27:29 +04:00
|
|
|
|
2013-03-12 10:09:19 +04:00
|
|
|
echo "Ensuring basic dependencies are installed..."
|
|
|
|
apt-get -qq update
|
2013-06-18 21:23:45 +04:00
|
|
|
apt-get -qq install lxc wget
|
2013-03-12 10:09:19 +04:00
|
|
|
|
|
|
|
echo "Looking in /proc/filesystems to see if we have AUFS support..."
|
|
|
|
if grep -q aufs /proc/filesystems
|
|
|
|
then
|
|
|
|
echo "Found."
|
|
|
|
else
|
|
|
|
echo "Ahem, it looks like the current kernel does not support AUFS."
|
|
|
|
echo "Let's see if we can load the AUFS module with modprobe..."
|
|
|
|
if modprobe aufs
|
|
|
|
then
|
|
|
|
echo "Module loaded."
|
|
|
|
else
|
|
|
|
echo "Ahem, things didn't turn out as expected."
|
|
|
|
KPKG=linux-image-extra-$(uname -r)
|
|
|
|
echo "Trying to install $KPKG..."
|
|
|
|
if apt-get -qq install $KPKG
|
|
|
|
then
|
|
|
|
echo "Installed."
|
|
|
|
else
|
|
|
|
echo "Oops, we couldn't install the -extra kernel."
|
|
|
|
echo "Are you sure you are running a supported version of Ubuntu?"
|
|
|
|
echo "Proceeding anyway, but Docker will probably NOT WORK!"
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
fi
|
2013-02-26 00:27:29 +04:00
|
|
|
|
2013-03-12 10:07:16 +04:00
|
|
|
echo "Downloading docker binary and uncompressing into /usr/local/bin..."
|
2013-08-09 04:02:59 +04:00
|
|
|
curl -s https://get.docker.io/builds/$(uname -s)/$(uname -m)/docker-latest.tgz |
|
2013-03-12 10:07:16 +04:00
|
|
|
tar -C /usr/local/bin --strip-components=1 -zxf- \
|
2013-05-07 00:26:23 +04:00
|
|
|
docker-latest/docker
|
2013-02-26 00:27:29 +04:00
|
|
|
|
2013-03-12 10:13:08 +04:00
|
|
|
if [ -f /etc/init/dockerd.conf ]
|
2013-02-26 00:27:29 +04:00
|
|
|
then
|
|
|
|
echo "Upstart script already exists."
|
|
|
|
else
|
|
|
|
echo "Creating /etc/init/dockerd.conf..."
|
2013-08-06 05:11:13 +04:00
|
|
|
cat >/etc/init/dockerd.conf <<EOF
|
|
|
|
description "Docker daemon"
|
|
|
|
start on filesystem or runlevel [2345]
|
|
|
|
stop on runlevel [!2345]
|
|
|
|
respawn
|
|
|
|
exec env LANG="en_US.UTF-8" /usr/local/bin/docker -d
|
|
|
|
EOF
|
2013-02-26 00:27:29 +04:00
|
|
|
fi
|
|
|
|
|
2013-03-12 10:08:21 +04:00
|
|
|
echo "Starting dockerd..."
|
|
|
|
start dockerd > /dev/null
|
2013-02-26 00:27:29 +04:00
|
|
|
|
2013-03-12 10:37:38 +04:00
|
|
|
echo "Done."
|
2013-02-26 00:27:29 +04:00
|
|
|
echo
|