Commit e637d85d by John Eskew

New version of docker_install.sh from https://get.docker.com/

parent 53dbc8f8
...@@ -20,10 +20,19 @@ set -e ...@@ -20,10 +20,19 @@ set -e
# To update this script on https://get.docker.com, # To update this script on https://get.docker.com,
# use hack/release.sh during a normal release, # use hack/release.sh during a normal release,
# or the following one-liner for script hotfixes: # or the following one-liner for script hotfixes:
# s3cmd put --acl-public -P hack/install.sh s3://get.docker.com/index # aws s3 cp --acl public-read hack/install.sh s3://get.docker.com/index
# #
url='https://get.docker.com/' url="https://get.docker.com/"
apt_url="https://apt.dockerproject.org"
yum_url="https://yum.dockerproject.org"
gpg_fingerprint="58118E89F3A912897C070ADBF76221572C52609D"
key_servers="
ha.pool.sks-keyservers.net
pgp.mit.edu
keyserver.ubuntu.com
"
command_exists() { command_exists() {
command -v "$@" > /dev/null 2>&1 command -v "$@" > /dev/null 2>&1
...@@ -99,7 +108,10 @@ rpm_import_repository_key() { ...@@ -99,7 +108,10 @@ rpm_import_repository_key() {
local key=$1; shift local key=$1; shift
local tmpdir=$(mktemp -d) local tmpdir=$(mktemp -d)
chmod 600 "$tmpdir" chmod 600 "$tmpdir"
gpg --homedir "$tmpdir" --keyserver ha.pool.sks-keyservers.net --recv-keys "$key" for key_server in $key_servers ; do
gpg --homedir "$tmpdir" --keyserver "$key_server" --recv-keys "$key" && break
done
gpg --homedir "$tmpdir" -k "$key" >/dev/null
gpg --homedir "$tmpdir" --export --armor "$key" > "$tmpdir"/repo.key gpg --homedir "$tmpdir" --export --armor "$key" > "$tmpdir"/repo.key
rpm --import "$tmpdir"/repo.key rpm --import "$tmpdir"/repo.key
rm -rf "$tmpdir" rm -rf "$tmpdir"
...@@ -200,12 +212,14 @@ do_install() { ...@@ -200,12 +212,14 @@ do_install() {
fi fi
# check to see which repo they are trying to install from # check to see which repo they are trying to install from
if [ -z "$repo" ]; then
repo='main' repo='main'
if [ "https://test.docker.com/" = "$url" ]; then if [ "https://test.docker.com/" = "$url" ]; then
repo='testing' repo='testing'
elif [ "https://experimental.docker.com/" = "$url" ]; then elif [ "https://experimental.docker.com/" = "$url" ]; then
repo='experimental' repo='experimental'
fi fi
fi
# perform some very rudimentary platform detection # perform some very rudimentary platform detection
lsb_dist='' lsb_dist=''
...@@ -409,9 +423,12 @@ do_install() { ...@@ -409,9 +423,12 @@ do_install() {
fi fi
( (
set -x set -x
$sh_c "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D" for key_server in $key_servers ; do
$sh_c "apt-key adv --keyserver hkp://${key_server}:80 --recv-keys ${gpg_fingerprint}" && break
done
$sh_c "apt-key adv -k ${gpg_fingerprint} >/dev/null"
$sh_c "mkdir -p /etc/apt/sources.list.d" $sh_c "mkdir -p /etc/apt/sources.list.d"
$sh_c "echo deb [arch=$(dpkg --print-architecture)] https://apt.dockerproject.org/repo ${lsb_dist}-${dist_version} ${repo} > /etc/apt/sources.list.d/docker.list" $sh_c "echo deb [arch=$(dpkg --print-architecture)] ${apt_url}/repo ${lsb_dist}-${dist_version} ${repo} > /etc/apt/sources.list.d/docker.list"
$sh_c 'sleep 3; apt-get update; apt-get install -y -q docker-engine' $sh_c 'sleep 3; apt-get update; apt-get install -y -q docker-engine'
) )
echo_docker_as_nonroot echo_docker_as_nonroot
...@@ -422,10 +439,10 @@ do_install() { ...@@ -422,10 +439,10 @@ do_install() {
$sh_c "cat >/etc/yum.repos.d/docker-${repo}.repo" <<-EOF $sh_c "cat >/etc/yum.repos.d/docker-${repo}.repo" <<-EOF
[docker-${repo}-repo] [docker-${repo}-repo]
name=Docker ${repo} Repository name=Docker ${repo} Repository
baseurl=https://yum.dockerproject.org/repo/${repo}/${lsb_dist}/${dist_version} baseurl=${yum_url}/repo/${repo}/${lsb_dist}/${dist_version}
enabled=1 enabled=1
gpgcheck=1 gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg gpgkey=${yum_url}/gpg
EOF EOF
if [ "$lsb_dist" = "fedora" ] && [ "$dist_version" -ge "22" ]; then if [ "$lsb_dist" = "fedora" ] && [ "$dist_version" -ge "22" ]; then
( (
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment