diff --git a/docs/articles/dsc.md b/docs/articles/dsc.md
index b6497baf0d..2fe7553b78 100644
--- a/docs/articles/dsc.md
+++ b/docs/articles/dsc.md
@@ -51,10 +51,10 @@ The Docker installation configuration is equivalent to running:
```
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys\
36A1D7869245C8950F966E92D8576A8BA88D21E9
-sh -c "echo deb https://get.docker.com/ubuntu docker main\
+sh -c "echo deb https://apt.dockerproject.org/repo ubuntu-trusty main\
> /etc/apt/sources.list.d/docker.list"
apt-get update
-apt-get install lxc-docker
+apt-get install docker-engine
```
Ensure that your current working directory is set to the `DockerClientDSC`
diff --git a/docs/installation/centos.md b/docs/installation/centos.md
index b9a92784ac..09c799402e 100644
--- a/docs/installation/centos.md
+++ b/docs/installation/centos.md
@@ -41,51 +41,28 @@ packages.
## Install
-You use the same installation procedure for all versions of CentOS,
-only the package you install differs. There are two packages to choose from:
+There are two ways to install Docker Engine. You can use `curl` with the `get.docker.com` site. This method runs an installation script which installs via the `yum` package manager. Or you can install with the `yum` package manager directly yourself.
-
+### Install with the script
-Installation procedure:
-
1. Log into your machine as a user with `sudo` or `root` privileges.
-2. Make sure your existing packages are up-to-date.
+2. Make sure your existing yum packages are up-to-date.
$ sudo yum update
-3. Download the Docker RPM to the current directory.
+3. Run the Docker installation script.
- $ curl -O -sSL https://get.docker.com/rpm/1.7.1/centos-7/RPMS/x86_64/docker-engine-1.7.1-1.el7.x86_64.rpm
+ $ curl -sSL https://get.docker.com/ | sh
+
+ This script adds the `docker.repo` repository and installs Docker.
-4. Use `yum` to install the package.
-
- $ sudo yum localinstall --nogpgcheck docker-engine-1.7.1-1.el7.x86_64.rpm
-
-5. Start the Docker daemon.
+4. Start the Docker daemon.
$ sudo service docker start
-6. Verify `docker` is installed correctly by running a test image in a container.
+5. Verify `docker` is installed correctly by running a test image in a container.
$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
@@ -112,6 +89,39 @@ Installation procedure:
For more examples and ideas, visit:
http://docs.docker.com/userguide/
+
+### Install without the script
+
+1. Log into your machine as a user with `sudo` or `root` privileges.
+
+2. Make sure your existing yum packages are up-to-date.
+
+ $ sudo yum update
+
+3. Add the yum repo yourself.
+
+ For CentOS 7 run:
+
+ $ cat >/etc/yum.repos.d/docker.repo <<-EOF
+ [dockerrepo]
+ name=Docker Repository
+ baseurl=https://yum.dockerproject.org/repo/main/centos/7
+ enabled=1
+ gpgcheck=1
+ gpgkey=https://yum.dockerproject.org/gpg
+ EOF
+
+4. Install the Docker package.
+
+ $ sudo yum install docker-engine
+
+5. Start the Docker daemon.
+
+ $ sudo service docker start
+
+6. Verify `docker` is installed correctly by running a test image in a container.
+
+ $ sudo docker run hello-world
## Create a docker group
diff --git a/docs/installation/debian.md b/docs/installation/debian.md
index 52265580b2..ac45721ff6 100644
--- a/docs/installation/debian.md
+++ b/docs/installation/debian.md
@@ -102,11 +102,11 @@ which is officially supported by Docker.
To uninstall the Docker package:
- $ sudo apt-get purge lxc-docker
+ $ sudo apt-get purge docker-engine
To uninstall the Docker package and dependencies that are no longer needed:
- $ sudo apt-get autoremove --purge lxc-docker
+ $ sudo apt-get autoremove --purge docker-engine
The above commands will not remove images, containers, volumes, or user created
configuration files on your host. If you wish to delete all images, containers,
diff --git a/docs/installation/fedora.md b/docs/installation/fedora.md
index 026a706996..eb8176296b 100644
--- a/docs/installation/fedora.md
+++ b/docs/installation/fedora.md
@@ -38,85 +38,28 @@ reported kernel bugs may have already been fixed on the latest kernel packages
## Install
-You use the same installation procedure for all versions of Fedora,
-only the package you install differs. Choose from these packages:
+There are two ways to install Docker Engine. You can use `curl` with the `get.docker.com` site. This method runs an installation script which installs via the `yum` package manager. Or you can install with the `yum` package manager directly yourself.
-
-
+### Install with the script
-This procedure depicts an installation on version 21. If you are installing on
-20 or 22, substitute that package for your installation.
-
1. Log into your machine as a user with `sudo` or `root` privileges.
-2. Make sure you don't have an older version of Docker installed.
+2. Make sure your existing yum packages are up-to-date.
- $ yum list installed | grep docker
-
- If you have an older version, remove it using the `yum -y remove ` command.
-
-3. Download the Docker RPM to the current directory.
+ $ sudo yum update
- $ curl -O -sSL https://url_to_package/docker-engine-1.7.1-0.1.fc21.x86_64.rpm
+3. Run the Docker installation script.
+
+ $ curl -sSL https://get.docker.com/ | sh
+
+ This script adds the `docker.repo` repository and installs Docker.
-4. Use `yum` to install the package.
-
- $ sudo yum localinstall --nogpgcheck docker-engine-1.7.1-0.1.fc21.x86_64.rpm
-
-5. Start the Docker daemon.
+4. Start the Docker daemon.
$ sudo service docker start
-6. Verify `docker` is installed correctly by running a test image in a container.
+5. Verify `docker` is installed correctly by running a test image in a container.
$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
@@ -124,7 +67,7 @@ This procedure depicts an installation on version 21. If you are installing on
a8219747be10: Pull complete
91c95931e552: Already exists
hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
- Digest: sha256:aa03e5d0d5553b4c3473e89c8619cf79df368babd18681cf5daeb82aab55838d
+ Digest: sha256:aa03e5d0d5553b4c3473e89c8619cf79df368babd1.7.1cf5daeb82aab55838d
Status: Downloaded newer image for hello-world:latest
Hello from Docker.
This message shows that your installation appears to be working correctly.
@@ -143,6 +86,61 @@ This procedure depicts an installation on version 21. If you are installing on
For more examples and ideas, visit:
http://docs.docker.com/userguide/
+
+### Install without the script
+
+1. Log into your machine as a user with `sudo` or `root` privileges.
+
+2. Make sure your existing yum packages are up-to-date.
+
+ $ sudo yum update
+
+3. Add the yum repo yourself.
+
+ For Fedora 20 run:
+
+ $ cat >/etc/yum.repos.d/docker.repo <<-EOF
+ [dockerrepo]
+ name=Docker Repository
+ baseurl=https://yum.dockerproject.org/repo/main/fedora/20
+ enabled=1
+ gpgcheck=1
+ gpgkey=https://yum.dockerproject.org/gpg
+ EOF
+
+ For Fedora 21 run:
+
+ $ cat >/etc/yum.repos.d/docker.repo <<-EOF
+ [dockerrepo]
+ name=Docker Repository
+ baseurl=https://yum.dockerproject.org/repo/main/fedora/21
+ enabled=1
+ gpgcheck=1
+ gpgkey=https://yum.dockerproject.org/gpg
+ EOF
+
+ For Fedora 22 run:
+
+ $ cat >/etc/yum.repos.d/docker.repo <<-EOF
+ [dockerrepo]
+ name=Docker Repository
+ baseurl=https://yum.dockerproject.org/repo/main/fedora/22
+ enabled=1
+ gpgcheck=1
+ gpgkey=https://yum.dockerproject.org/gpg
+ EOF
+
+4. Install the Docker package.
+
+ $ sudo yum install docker-engine
+
+5. Start the Docker daemon.
+
+ $ sudo service docker start
+
+6. Verify `docker` is installed correctly by running a test image in a container.
+
+ $ sudo docker run hello-world
## Create a docker group
diff --git a/docs/installation/rhel.md b/docs/installation/rhel.md
index 2695246cae..af496f6769 100644
--- a/docs/installation/rhel.md
+++ b/docs/installation/rhel.md
@@ -35,48 +35,29 @@ mind that your system should be fully patched to fix any potential kernel bugs.
Any reported kernel bugs may have already been fixed on the latest kernel
packages.
-## Install
+## Install Docker Engine
-You use the same installation procedure for all versions of Red Hat Enterprise,
-only the package you install differs. There are two packages to choose from:
+There are two ways to install Docker Engine. You can use `curl` with the `get.docker.com` site. This method runs an installation script which installs via the `yum` package manager. Or you can install with the `yum` package manager directly yourself.
-
+### Install with the script
-Installation procedure:
+You use the same installation procedure for all versions of CentOS.
1. Log into your machine as a user with `sudo` or `root` privileges.
-2. Download the Docker RPM to the current directory.
+2. Make sure your existing yum packages are up-to-date.
+
+ $ sudo yum update
- $ curl -O -sSL https://get.docker.com/rpm/1.7.1/centos-7/RPMS/x86_64/docker-engine-1.7.1-1.el7.x86_64.rpm
+3. Run the Docker installation script.
+
+ $ curl -sSL https://get.docker.com/ | sh
-3. Use `yum` to install the package.
-
- $ sudo yum localinstall --nogpgcheck docker-engine-1.7.1-1.el7.x86_64.rpm
-
-5. Start the Docker daemon.
+4. Start the Docker daemon.
$ sudo service docker start
-6. Verify `docker` is installed correctly.
+5. Verify `docker` is installed correctly by running a test image in a container.
$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
@@ -84,7 +65,7 @@ Installation procedure:
a8219747be10: Pull complete
91c95931e552: Already exists
hello-world:latest: The image you are pulling has been verified. Important: image verification is a tech preview feature and should not be relied on to provide security.
- Digest: sha256:aa03e5d0d5553b4c3473e89c8619cf79df368babd18681cf5daeb82aab55838d
+ Digest: sha256:aa03e5d0d5553b4c3473e89c8619cf79df368babd1.7.1cf5daeb82aab55838d
Status: Downloaded newer image for hello-world:latest
Hello from Docker.
This message shows that your installation appears to be working correctly.
@@ -103,6 +84,39 @@ Installation procedure:
For more examples and ideas, visit:
http://docs.docker.com/userguide/
+
+### Install without the script
+
+1. Log into your machine as a user with `sudo` or `root` privileges.
+
+2. Make sure your existing yum packages are up-to-date.
+
+ $ sudo yum update
+
+3. Add the yum repo yourself.
+
+ For RHEL 7 run:
+
+ $ cat >/etc/yum.repos.d/docker.repo <<-EOF
+ [dockerrepo]
+ name=Docker Repository
+ baseurl=https://yum.dockerproject.org/repo/main/centos/7
+ enabled=1
+ gpgcheck=1
+ gpgkey=https://yum.dockerproject.org/gpg
+ EOF
+
+4. Install the Docker package.
+
+ $ sudo yum install docker-engine
+
+5. Start the Docker daemon.
+
+ $ sudo service docker start
+
+6. Verify `docker` is installed correctly by running a test image in a container.
+
+ $ sudo docker run hello-world
## Create a docker group
diff --git a/docs/installation/ubuntulinux.md b/docs/installation/ubuntulinux.md
index f6556f768b..46cc65bced 100644
--- a/docs/installation/ubuntulinux.md
+++ b/docs/installation/ubuntulinux.md
@@ -347,11 +347,11 @@ To install the latest version of Docker with `wget`:
To uninstall the Docker package:
- $ sudo apt-get purge lxc-docker
+ $ sudo apt-get purge docker-engine
To uninstall the Docker package and dependencies that are no longer needed:
- $ sudo apt-get autoremove --purge lxc-docker
+ $ sudo apt-get autoremove --purge docker-engine
The above commands will not remove images, containers, volumes, or user created
configuration files on your host. If you wish to delete all images, containers,
diff --git a/hack/install.sh b/hack/install.sh
index cae98dcb2d..b03db91272 100755
--- a/hack/install.sh
+++ b/hack/install.sh
@@ -6,7 +6,12 @@ set -e
# or:
# 'wget -qO- https://get.docker.com/ | sh'
#
-# If you're interested in the daily experimental build:
+# For test builds (ie. release candidates):
+# 'curl -sSL https://test.docker.com/ | sh'
+# or:
+# 'wget -qO- https://test.docker.com/ | sh'
+#
+# For experimental builds:
# 'curl -sSL https://experimental.docker.com/ | sh'
# or:
# 'wget -qO- https://experimental.docker.com/ | sh'
@@ -25,6 +30,12 @@ command_exists() {
}
echo_docker_as_nonroot() {
+ if command_exists docker && [ -e /var/run/docker.sock ]; then
+ (
+ set -x
+ $sh_c 'docker version'
+ ) || true
+ fi
your_user=your-user
[ "$user" != 'root' ] && your_user="$user"
# intentionally mixed spaces and tabs here -- tabs are stripped by "<<-EOF", spaces are kept in the output
@@ -95,47 +106,60 @@ do_install() {
curl='busybox wget -qO-'
fi
+ # check to see which repo they are trying to install from
+ repo='main'
+ if [ "https://test.docker.com/" = "$url" ]; then
+ repo='testing'
+ elif [ "https://experimental.docker.com/" = "$url" ]; then
+ repo='experimental'
+ fi
+
# perform some very rudimentary platform detection
lsb_dist=''
+ dist_version=''
if command_exists lsb_release; then
lsb_dist="$(lsb_release -si)"
+ dist_version="$(lsb_release --codename | cut -f2)"
fi
if [ -z "$lsb_dist" ] && [ -r /etc/lsb-release ]; then
lsb_dist="$(. /etc/lsb-release && echo "$DISTRIB_ID")"
+ dist_version="$(. /etc/lsb-release && echo "$DISTRIB_CODENAME")"
fi
if [ -z "$lsb_dist" ] && [ -r /etc/debian_version ]; then
lsb_dist='debian'
+ dist_version="$(cat /etc/debian_version | sed 's/\/.*//' | sed 's/\..*//')"
+ case "$dist_version" in
+ 8)
+ dist_version="jessie"
+ ;;
+
+ 7)
+ dist_version="wheezy"
+ ;;
+ esac
fi
if [ -z "$lsb_dist" ] && [ -r /etc/fedora-release ]; then
lsb_dist='fedora'
+ dist_version="$(rpm -qa \*-release | cut -d"-" -f3)"
fi
- if [ -z "$lsb_dist" ] && [ -r /etc/centos-release ]; then
- lsb_dist='centos'
+ if [ -z "$lsb_dist" ]; then
+ if [ -r /etc/centos-release ] || [ -r /etc/redhat-release ]; then
+ lsb_dist='centos'
+ dist_version="$(rpm -qa \*-release | cut -d"-" -f3)"
+ fi
fi
if [ -z "$lsb_dist" ] && [ -r /etc/os-release ]; then
lsb_dist="$(. /etc/os-release && echo "$ID")"
+ dist_version="$(. /etc/os-release && echo "$VERSION_ID")"
fi
lsb_dist="$(echo "$lsb_dist" | tr '[:upper:]' '[:lower:]')"
case "$lsb_dist" in
- amzn|fedora|centos)
- if [ "$lsb_dist" = 'amzn' ]; then
- (
- set -x
- $sh_c 'sleep 3; yum -y -q install docker'
- )
- else
- (
- set -x
- $sh_c 'sleep 3; yum -y -q install docker-io'
- )
- fi
- if command_exists docker && [ -e /var/run/docker.sock ]; then
- (
- set -x
- $sh_c 'docker version'
- ) || true
- fi
+ amzn)
+ (
+ set -x
+ $sh_c 'sleep 3; yum -y -q install docker'
+ )
echo_docker_as_nonroot
exit 0
;;
@@ -145,17 +169,11 @@ do_install() {
set -x
$sh_c 'sleep 3; zypper -n install docker'
)
- if command_exists docker && [ -e /var/run/docker.sock ]; then
- (
- set -x
- $sh_c 'docker version'
- ) || true
- fi
echo_docker_as_nonroot
exit 0
;;
- ubuntu|debian|linuxmint|'elementary os'|kali)
+ ubuntu|debian)
export DEBIAN_FRONTEND=noninteractive
did_apt_get_update=
@@ -209,30 +227,39 @@ do_install() {
curl='curl -sSL'
fi
(
- set -x
- if [ "https://get.docker.com/" = "$url" ]; then
- $sh_c "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9"
- elif [ "https://test.docker.com/" = "$url" ]; then
- $sh_c "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 740B314AE3941731B942C66ADF4FD13717AAD7D6"
- elif [ "https://experimental.docker.com/" = "$url" ]; then
- $sh_c "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys E33FF7BF5C91D50A6F91FFFD4CC38D40F9A96B49"
- else
- $sh_c "$curl ${url}gpg | apt-key add -"
- fi
- $sh_c "mkdir -p /etc/apt/sources.list.d"
- $sh_c "echo deb ${url}ubuntu docker main > /etc/apt/sources.list.d/docker.list"
- $sh_c 'sleep 3; apt-get update; apt-get install -y -q lxc-docker'
+ set -x
+ $sh_c "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D"
+ $sh_c "mkdir -p /etc/apt/sources.list.d"
+ $sh_c "echo deb https://apt.dockerproject.org/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'
)
- if command_exists docker && [ -e /var/run/docker.sock ]; then
- (
- set -x
- $sh_c 'docker version'
- ) || true
- fi
echo_docker_as_nonroot
exit 0
;;
+ fedora|centos)
+ cat >/etc/yum.repos.d/docker-${repo}.repo <<-EOF
+ [docker-${repo}-repo]
+ name=Docker ${repo} Repository
+ baseurl=https://yum.dockerproject.org/repo/${repo}/${lsb_dist}/${dist_version}
+ enabled=1
+ gpgcheck=1
+ gpgkey=https://yum.dockerproject.org/gpg
+ EOF
+ if [ "$lsb_dist" = "fedora" ] && [ "$dist_version" -ge "22" ]; then
+ (
+ set -x
+ $sh_c 'sleep 3; dnf -y -q install docker-engine'
+ )
+ else
+ (
+ set -x
+ $sh_c 'sleep 3; yum -y -q install docker-engine'
+ )
+ fi
+ echo_docker_as_nonroot
+ exit 0
+ ;;
gentoo)
if [ "$url" = "https://test.docker.com/" ]; then
# intentionally mixed spaces and tabs here -- tabs are stripped by "<<-'EOF'", spaces are kept in the output
diff --git a/project/PACKAGERS.md b/project/PACKAGERS.md
index fd2156c585..6a540c28cf 100644
--- a/project/PACKAGERS.md
+++ b/project/PACKAGERS.md
@@ -25,8 +25,7 @@ for, so feel free to reach out to him even just to say "Hi!"
## Package Name
If possible, your package should be called "docker". If that name is already
-taken, a second choice is "lxc-docker", but with the caveat that "LXC" is now an
-optional dependency (as noted below). Another possible choice is "docker.io".
+taken, a second choice is "docker-engine". Another possible choice is "docker.io".
## Official Build vs Distro Build