diff --git a/docs/installation/amazon.md b/docs/installation/amazon.md deleted file mode 100644 index 8e2615d2bd..0000000000 --- a/docs/installation/amazon.md +++ /dev/null @@ -1,21 +0,0 @@ - - -## Amazon EC2 - -You can install Docker on any AWS EC2 Amazon Machine Image (AMI) which runs an -operating system that Docker supports. Amazon's website includes specific -instructions for [installing on Amazon -Linux](http://docs.aws.amazon.com/AmazonECS/latest/developerguide/docker-basics.html#install_docker). To install on -another AMI, follow the instructions for its specific operating -system in this installation guide. - -For detailed information on Amazon AWS support for Docker, refer to [Amazon's -documentation](http://docs.aws.amazon.com/AmazonECS/latest/developerguide/docker-basics.html). diff --git a/docs/installation/azure.md b/docs/installation/azure.md deleted file mode 100644 index 0ded4fde18..0000000000 --- a/docs/installation/azure.md +++ /dev/null @@ -1,33 +0,0 @@ - - -# Microsoft Azure - - -## Creating a Docker host machine on Azure - -Please check out to the following detailed tutorials on [Microsoft Azure][0] -website to find out different ways to create a Docker-ready Linux virtual -machines on Azure: - -* [Docker Virtual Machine Extensions on Azure][1] - * [How to use the Docker VM Extension from Azure Cross-Platform Interface][2] - * [How to use the Docker VM Extension with the Azure Portal][3] -* [Using Docker Machine with Azure][4] - -## What next? - -Continue with the [User Guide](../userguide/index.md). - -[0]: https://azure.microsoft.com/ -[1]: https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-docker-vm-extension/ -[2]: https://azure.microsoft.com/documentation/articles/virtual-machines-docker-with-xplat-cli/ -[3]: https://azure.microsoft.com/documentation/articles/virtual-machines-docker-with-portal/ -[4]: https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-docker-machine/ diff --git a/docs/installation/cloud-ex-aws.md b/docs/installation/cloud-ex-aws.md new file mode 100644 index 0000000000..70d3fc79c2 --- /dev/null +++ b/docs/installation/cloud-ex-aws.md @@ -0,0 +1,204 @@ + + +# Example: Manual install on a cloud provider + +You can install Docker Engine directly to servers you have on cloud providers. This example shows how to create an Amazon Web Services (AWS) EC2 instance, and install Docker Engine on it. + +You can use this same general approach to create Dockerized hosts on other cloud providers. + +### Step 1. Sign up for AWS + +1. If you are not already an AWS user, sign up for AWS to create an account and get root access to EC2 cloud computers. If you have an Amazon account, you can use it as your root user account. + +2. Create an IAM (Identity and Access Management) administrator user, an admin group, and a key pair associated with a region. + + From the AWS menus, select **Services** > **IAM** to get started. + + See the AWS documentation on Setting Up with Amazon EC2. Follow the steps for "Create an IAM User" and "Create a Key Pair". + + If you are just getting started with AWS and EC2, you do not need to create a virtual private cloud (VPC) or specify a subnet. The newer EC2-VPC platform (accounts created after 2013-12-04) comes with a default VPC and subnet in each availability zone. When you launch an instance, it automatically uses the default VPC. + +### Step 2. Configure and start an EC2 instance + +Launch an instance to create a virtual machine (VM) with a specified operating system (OS) as follows. + + 1. Log into AWS with your IAM credentials. + + On the AWS home page, click **EC2** to go to the dashboard, then click **Launch Instance**. + + ![EC2 dashboard](images/ec2_launch_instance.png) + + AWS EC2 virtual servers are called *instances* in Amazon parlance. Once you set up an account, IAM user and key pair, you are ready to launch an instance. It is at this point that you select the OS for the VM. + + 2. Choose an Amazon Machine Image (AMI) with the OS and applications you want. For this example, we select an Ubuntu server. + + ![Launch Ubuntu](images/ec2-ubuntu.png) + + 3. Choose an instance type. + + ![Choose a general purpose instance type](images/ec2_instance_type.png) + + 4. Configure the instance. + + You can select the default network and subnet, which are inherently linked to a region and availability zone. + + ![Configure the instance](images/ec2_instance_details.png) + + 5. Click **Review and Launch**. + + 6. Select a key pair to use for this instance. + + When you choose to launch, you need to select a key pair to use. Save the `.pem` file to use in the next steps. + +The instance is now up-and-running. The menu path to get back to your EC2 instance on AWS is: **EC2 (Virtual Servers in Cloud)** > **EC2 Dashboard** > **Resources** > **Running instances**. + +To get help with your private key file, instance IP address, and how to log into the instance via SSH, click the **Connect** button at the top of the AWS instance dashboard. + + +### Step 3. Log in from a terminal, configure apt, and get packages + +1. Log in to the EC2 instance from a command line terminal. + + Change directories into the directory containing the SSH key and run this command (or give the path to it as part of the command): + + $ ssh -i "YourKey" ubuntu@xx.xxx.xxx.xxx + + For our example: + + $ cd ~/Desktop/keys/amazon_ec2 + $ ssh -i "my-key-pair.pem" ubuntu@xx.xxx.xxx.xxx + + We'll follow the instructions for installing Docker on Ubuntu at https://docs.docker.com/engine/installation/ubuntulinux/. The next few steps reflect those instructions. + +2. Check the kernel version to make sure it's 3.10 or higher. + + ubuntu@ip-xxx-xx-x-xxx:~$ uname -r + 3.13.0-48-generic + +3. Add the new `gpg` key. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D + Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.jNZLKNnKte --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D + gpg: requesting key 2C52609D from hkp server p80.pool.sks-keyservers.net + gpg: key 2C52609D: public key "Docker Release Tool (releasedocker) " imported + gpg: Total number processed: 1 + gpg: imported: 1 (RSA: 1) + +4. Create a `docker.list` file, and add an entry for our OS, Ubuntu Trusty 14.04 (LTS). + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo vi /etc/apt/sources.list.d/docker.list + + If we were updating an existing file, we'd delete any existing entries. + +5. Update the `apt` package index. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo apt-get update + +6. Purge the old repo if it exists. + + In our case the repo doesn't because this is a new VM, but let's run it anyway just to be sure. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo apt-get purge lxc-docker + Reading package lists... Done + Building dependency tree + Reading state information... Done + Package 'lxc-docker' is not installed, so not removed + 0 upgraded, 0 newly installed, 0 to remove and 139 not upgraded. + +7. Verify that `apt` is pulling from the correct repository. + + ubuntu@ip-172-31-0-151:~$ sudo apt-cache policy docker-engine + docker-engine: + Installed: (none) + Candidate: 1.9.1-0~trusty + Version table: + 1.9.1-0~trusty 0 + 500 https://apt.dockerproject.org/repo/ ubuntu-trusty/main amd64 Packages + 1.9.0-0~trusty 0 + 500 https://apt.dockerproject.org/repo/ ubuntu-trusty/main amd64 Packages + . . . + + From now on when you run `apt-get upgrade`, `apt` pulls from the new repository. + +### Step 4. Install recommended prerequisites for the OS + +For Ubuntu Trusty (and some other versions), it’s recommended to install the `linux-image-extra` kernel package, which allows you use the `aufs` storage driver, so we'll do that now. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo apt-get update + ubuntu@ip-172-31-0-151:~$ sudo apt-get install linux-image-extra-$(uname -r) + +### Step 5. Install Docker Engine on the remote instance + +1. Update the apt package index. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo apt-get update + +2. Install Docker Engine. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo apt-get install docker-engine + Reading package lists... Done + Building dependency tree + Reading state information... Done + The following extra packages will be installed: + aufs-tools cgroup-lite git git-man liberror-perl + Suggested packages: + git-daemon-run git-daemon-sysvinit git-doc git-el git-email git-gui gitk + gitweb git-arch git-bzr git-cvs git-mediawiki git-svn + The following NEW packages will be installed: + aufs-tools cgroup-lite docker-engine git git-man liberror-perl + 0 upgraded, 6 newly installed, 0 to remove and 139 not upgraded. + Need to get 11.0 MB of archives. + After this operation, 60.3 MB of additional disk space will be used. + Do you want to continue? [Y/n] y + Get:1 http://us-west-1.ec2.archive.ubuntu.com/ubuntu/ trusty/universe aufs-tools amd64 1:3.2+20130722-1.1 [92.3 kB] + Get:2 http://us-west-1.ec2.archive.ubuntu.com/ubuntu/ trusty/main liberror-perl all 0.17-1.1 [21.1 kB] + . . . + +3. Start the Docker daemon. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo service docker start + +4. Verify Docker Engine is installed correctly by running `docker run hello-world`. + + ubuntu@ip-xxx-xx-x-xxx:~$ sudo docker run hello-world + ubuntu@ip-172-31-0-151:~$ sudo docker run hello-world + Unable to find image 'hello-world:latest' locally + latest: Pulling from library/hello-world + b901d36b6f2f: Pull complete + 0a6ba66e537a: Pull complete + Digest: sha256:8be990ef2aeb16dbcb9271ddfe2610fa6658d13f6dfb8bc72074cc1ca36966a7 + Status: Downloaded newer image for hello-world:latest + + Hello from Docker. + This message shows that your installation appears to be working correctly. + + To generate this message, Docker took the following steps: + 1. The Docker client contacted the Docker daemon. + 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. + 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. + 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. + + To try something more ambitious, you can run an Ubuntu container with: + $ docker run -it ubuntu bash + + Share images, automate workflows, and more with a free Docker Hub account: + https://hub.docker.com + + For more examples and ideas, visit: + https://docs.docker.com/userguide/ + +## Where to go next + +* Would you like a quicker way to do Docker cloud installs? See [Digital Ocean Example: Use Docker Machine to provision Docker on cloud hosts](cloud-ex-aws.md). + +* To learn more about options for installing Docker Engine on cloud providers, see [Understand cloud install options and choose one](cloud.md). + +* To get started with Docker, see Docker User Guide . diff --git a/docs/installation/cloud-ex-machine-ocean.md b/docs/installation/cloud-ex-machine-ocean.md new file mode 100644 index 0000000000..678208208e --- /dev/null +++ b/docs/installation/cloud-ex-machine-ocean.md @@ -0,0 +1,227 @@ + + +# Example: Use Docker Machine to provision cloud hosts + +Docker Machine driver plugins are available for many cloud platforms, so you can use Machine to provision cloud hosts. When you use Docker Machine for provisioning, you create cloud hosts with Docker Engine installed on them. + +You'll need to install and run Docker Machine, and create an account with the cloud provider. + +Then you provide account verification, security credentials, and configuration options for the providers as flags to `docker-machine create`. The flags are unique for each cloud-specific driver. For instance, to pass a Digital Ocean access token you use the `--digitalocean-access-token` flag. + +As an example, let's take a look at how to create a Dockerized Digital Ocean _Droplet_ (cloud server). + +### Step 1. Create a Digital Ocean account and log in + +If you have not done so already, go to Digital Ocean, create an account, and log in. + +### Step 2. Generate a personal access token + +To generate your access token: + + 1. Go to the Digital Ocean administrator console and click **API** in the header. + + ![Click API in Digital Ocean console](images/ocean_click_api.png) + + 2. Click **Generate New Token** to get to the token generator. + + ![Generate token](images/ocean_gen_token.png) + + 3. Give the token a clever name (e.g. "machine"), make sure the **Write (Optional)** checkbox is checked, and click **Generate Token**. + + ![Name and generate token](images/ocean_token_create.png) + + 4. Grab (copy to clipboard) the generated big long hex string and store it somewhere safe. + + ![Copy and save personal access token](images/ocean_save_token.png) + + This is the personal access token you'll use in the next step to create your cloud server. + +### Step 3. Start Docker Machine + +1. If you have not done so already, install Docker Machine on your local host. + + * How to install Docker Machine on Mac OS X + + * How to install Docker Machine on Windows + + * Install Docker Machine directly (e.g., on Linux) + +2. At a command terminal, use `docker-machine ls` to get a list of Docker Machines and their status. + + $ docker-machine ls + NAME ACTIVE DRIVER STATE URL SWARM + default - virtualbox Stopped + +3. If Machine is stopped, start it. + + $ docker-machine start default + (default) OUT | Starting VM... + Started machines may have new IP addresses. You may need to re-run the `docker-machine env` command. + +4. Set environment variables to connect your shell to the local VM. + + $ docker-machine env default + export DOCKER_TLS_VERIFY="1" + export DOCKER_HOST="tcp://xxx.xxx.xx.xxx:xxxx" + export DOCKER_CERT_PATH="/Users/londoncalling/.docker/machine/machines/default" + export DOCKER_MACHINE_NAME="default" + # Run this command to configure your shell: + # eval "$(docker-machine env default)" + + eval "$(docker-machine env default)" + +5. Re-run `docker-machine ls` to check that it's now running. + + $ docker-machine ls + NAME ACTIVE DRIVER STATE URL SWARM + default * virtualbox Running tcp:////xxx.xxx.xx.xxx:xxxx + +6. Run some Docker commands to make sure that Docker Engine is also up-and-running. + + We'll run `docker run hello-world` again, but you could try `docker ps`, `docker run docker/whalesay cowsay boo`, or another command to verify that Docker is running. + + $ docker run hello-world + + Hello from Docker. + This message shows that your installation appears to be working correctly. + + To generate this message, Docker took the following steps: + 1. The Docker client contacted the Docker daemon. + 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. + 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. + 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. + + To try something more ambitious, you can run an Ubuntu container with: + $ docker run -it ubuntu bash + + Share images, automate workflows, and more with a free Docker Hub account: https://hub.docker.com + + For more examples and ideas, visit: + https://docs.docker.com/userguide/ + +### Step 4. Use Docker Machine to Create the Droplet + +1. Run `docker-machine create` with the `digitalocean` driver and pass your key to the `--digitalocean-access-token` flag, along with a name for the new cloud server. + + For this example, we'll call our new Droplet "docker-sandbox". + + $ docker-machine create --driver digitalocean --digitalocean-access-token 455275108641c7716462d6f35d08b76b246b6b6151a816cf75de63c5ef918872 docker-sandbox + Running pre-create checks... + Creating machine... + (docker-sandbox) OUT | Creating SSH key... + (docker-sandbox) OUT | Creating Digital Ocean droplet... + (docker-sandbox) OUT | Waiting for IP address to be assigned to the Droplet... + Waiting for machine to be running, this may take a few minutes... + Machine is running, waiting for SSH to be available... + Detecting operating system of created instance... + Detecting the provisioner... + Provisioning created instance... + Copying certs to the local machine directory... + Copying certs to the remote machine... + Setting Docker configuration on the remote daemon... + To see how to connect Docker to this machine, run: docker-machine env docker-sandbox + + When the Droplet is created, Docker generates a unique SSH key and stores it on your local system in `~/.docker/machines`. Initially, this is used to provision the host. Later, it's used under the hood to access the Droplet directly with the `docker-machine ssh` command. Docker Engine is installed on the cloud server and the daemon is configured to accept remote connections over TCP using TLS for authentication. + +2. Go to the Digital Ocean console to view the new Droplet. + + ![Droplet in Digital Ocean created with Machine](images/ocean_droplet.png) + +3. At the command terminal, run `docker-machine ls`. + + $ docker-machine ls + NAME ACTIVE DRIVER STATE URL SWARM + default * virtualbox Running tcp://192.168.99.100:2376 + docker-sandbox - digitalocean Running tcp://45.55.139.48:2376 + + Notice that the new cloud server is running but is not the active host. Our command shell is still connected to the default machine, which is currently the active host as indicated by the asterisk (*). + +4. Run `docker-machine env docker-sandbox` to get the environment commands for the new remote host, then run `eval` as directed to re-configure the shell to connect to `docker-sandbox`. + + $ docker-machine env docker-sandbox + export DOCKER_TLS_VERIFY="1" + export DOCKER_HOST="tcp://45.55.222.72:2376" + export DOCKER_CERT_PATH="/Users/victoriabialas/.docker/machine/machines/docker-sandbox" + export DOCKER_MACHINE_NAME="docker-sandbox" + # Run this command to configure your shell: + # eval "$(docker-machine env docker-sandbox)" + + $ eval "$(docker-machine env docker-sandbox)" + +5. Re-run `docker-machine ls` to verify that our new server is the active machine, as indicated by the asterisk (*) in the ACTIVE column. + + $ docker-machine ls + NAME ACTIVE DRIVER STATE URL SWARM + default - virtualbox Running tcp://192.168.99.100:2376 + docker-sandbox * digitalocean Running tcp://45.55.222.72:2376 + +6. Log in to the Droplet with the `docker-machine ssh` command. + + $ docker-machine ssh docker-sandbox + Welcome to Ubuntu 14.04.3 LTS (GNU/Linux 3.13.0-71-generic x86_64) + + * Documentation: https://help.ubuntu.com/ + + System information as of Mon Dec 21 21:38:53 EST 2015 + + System load: 0.77 Processes: 70 + Usage of /: 11.4% of 19.56GB Users logged in: 0 + Memory usage: 15% IP address for eth0: 45.55.139.48 + Swap usage: 0% IP address for docker0: 172.17.0.1 + + Graph this data and manage this system at: + https://landscape.canonical.com/ + +7. Verify Docker Engine is installed correctly by running `docker run hello-world`. + + ubuntu@ip-172-31-0-151:~$ sudo docker run hello-world + Unable to find image 'hello-world:latest' locally + latest: Pulling from library/hello-world + b901d36b6f2f: Pull complete + 0a6ba66e537a: Pull complete + Digest: sha256:8be990ef2aeb16dbcb9271ddfe2610fa6658d13f6dfb8bc72074cc1ca36966a7 + Status: Downloaded newer image for hello-world:latest + + Hello from Docker. + This message shows that your installation appears to be working correctly. + . . . + + You can type keyboard command Control-D or `exit` to log out of the remote server. + +#### Understand the defaults and options on the create command + +For convenience, `docker-machine` will use sensible defaults for choosing settings such as the image that the server is based on, but you override the defaults using the respective flags (e.g. `--digitalocean-image`). This is useful if, for example, you want to create a cloud server with a lot of memory and CPUs (by default `docker-machine` creates a small server). For a full list of the flags/settings available and their defaults, see the output of `docker-machine create -h` at the command line. See also Driver options and operating system defaults and information about the create command in the Docker Machine documentation. + + +### Step 5. Use Docker Machine to remove the Droplet + +To remove a host and all of its containers and images, first stop the machine, then use `docker-machine rm`: + + $ docker-machine stop docker-sandbox + $ docker-machine rm docker-sandbox + Do you really want to remove "docker-sandbox"? (y/n): y + Successfully removed docker-sandbox + + $ docker-machine ls + NAME ACTIVE DRIVER STATE URL SWARM + default * virtualbox Running tcp:////xxx.xxx.xx.xxx:xxxx + +If you monitor the Digital Ocean console while you run these commands, you will see it update first to reflect that the Droplet was stopped, and then removed. + +If you create a host with Docker Machine, but remove it through the cloud provider console, Machine will lose track of the server status. So please use the `docker-machine rm` command for hosts you create with `docker-machine --create`. + +## Where to go next + +* To learn more about options for installing Docker Engine on cloud providers, see [Understand cloud install options and choose one](cloud.md). + +* To learn more about using Docker Machine to provision cloud hosts, see Using Docker Machine with a cloud provider. + +* To get started with Docker, see Docker User Guide. diff --git a/docs/installation/cloud.md b/docs/installation/cloud.md new file mode 100644 index 0000000000..ba182b6396 --- /dev/null +++ b/docs/installation/cloud.md @@ -0,0 +1,53 @@ + + +# Understand cloud install options and choose one + +You can install Docker Engine on any cloud platform that runs an operating system (OS) that Docker supports. This includes many flavors and versions of Linux, along with Mac and Windows. + +You have two options for installing: + +* Manually install on the cloud (create cloud hosts, then install Docker Engine on them) +* Use Docker Machine to provision cloud hosts + +## Manually install Docker Engine on a cloud host + +To install on a cloud provider: + +1. Create an account with the cloud provider, and read cloud provider documentation to understand their process for creating hosts. + +2. Decide which OS you want to run on the cloud host. + +3. Understand the Docker prerequisites and install process for the chosen OS. See [Install Docker Engine](index.md) for a list of supported systems and links to the install guides. + +4. Create a host with a Docker supported OS, and install Docker per the instructions for that OS. + +[Example: Manual install on a cloud provider](cloud-ex-aws.md) shows how to create an Amazon Web Services (AWS) EC2 instance, and install Docker Engine on it. + + +## Use Docker Machine to provision cloud hosts + +Docker Machine driver plugins are available for several popular cloud platforms, so you can use Machine to provision one or more Dockerized hosts on those platforms. + +With Docker Machine, you can use the same interface to create cloud hosts with Docker Engine on them, each configured per the options you specify. + +To do this, you use the `docker-machine create` command with the driver for the cloud provider, and provider-specific flags for account verification, security credentials, and other configuration details. + +[Example: Use Docker Machine to provision cloud hosts](cloud-ex-machine-ocean.md) walks you through the steps to set up Docker Machine and provision a Dockerized host on [Digital Ocean](https://www.digitalocean.com/). + +## Where to go next +* [Example: Manual install on a cloud provider](cloud-ex-aws.md) (AWS EC2) + +* [Example: Use Docker Machine to provision cloud hosts](cloud-ex-machine-ocean.md) (Digital Ocean) + +* [Using Docker Machine with a cloud provider](https://docs.docker.com/machine/get-started-cloud/) + +* Docker User Guide (after your install is complete, get started using Docker) diff --git a/docs/installation/google.md b/docs/installation/google.md deleted file mode 100644 index b507f41b1a..0000000000 --- a/docs/installation/google.md +++ /dev/null @@ -1,47 +0,0 @@ - - -# Google Cloud Platform - -## QuickStart with Container-optimized Google Compute Engine images - -1. Go to [Google Cloud Console][1] and create a new Cloud Project with - [Compute Engine enabled][2] - -2. Download and configure the [Google Cloud SDK][3] to use your - project with the following commands: - - $ curl -sSL https://sdk.cloud.google.com | bash - $ gcloud auth login - $ gcloud config set project - -3. Start a new instance using the latest [Container-optimized image][4]: - (select a zone close to you and the desired instance size) - - $ gcloud compute instances create docker-playground \ - --image container-vm \ - --zone us-central1-a \ - --machine-type f1-micro - -4. Connect to the instance using SSH: - - $ gcloud compute ssh --zone us-central1-a docker-playground - docker-playground:~$ sudo docker run hello-world - Hello from Docker. - This message shows that your installation appears to be working correctly. - ... - -Read more about [deploying Containers on Google Cloud Platform][5]. - -[1]: https://cloud.google.com/console -[2]: https://developers.google.com/compute/docs/signup -[3]: https://developers.google.com/cloud/sdk -[4]: https://developers.google.com/compute/docs/containers#container-optimized_google_compute_engine_images -[5]: https://developers.google.com/compute/docs/containers diff --git a/docs/installation/images/ec2-ubuntu.png b/docs/installation/images/ec2-ubuntu.png new file mode 100644 index 0000000000..04f1d1c50d Binary files /dev/null and b/docs/installation/images/ec2-ubuntu.png differ diff --git a/docs/installation/images/ec2_instance_details.png b/docs/installation/images/ec2_instance_details.png new file mode 100644 index 0000000000..51e3808a24 Binary files /dev/null and b/docs/installation/images/ec2_instance_details.png differ diff --git a/docs/installation/images/ec2_instance_type.png b/docs/installation/images/ec2_instance_type.png new file mode 100644 index 0000000000..5327a5e21e Binary files /dev/null and b/docs/installation/images/ec2_instance_type.png differ diff --git a/docs/installation/images/ec2_launch_instance.png b/docs/installation/images/ec2_launch_instance.png new file mode 100644 index 0000000000..2463f3441d Binary files /dev/null and b/docs/installation/images/ec2_launch_instance.png differ diff --git a/docs/installation/images/ocean_click_api.png b/docs/installation/images/ocean_click_api.png new file mode 100644 index 0000000000..0dc11ac546 Binary files /dev/null and b/docs/installation/images/ocean_click_api.png differ diff --git a/docs/installation/images/ocean_droplet.png b/docs/installation/images/ocean_droplet.png new file mode 100644 index 0000000000..32edd5ce35 Binary files /dev/null and b/docs/installation/images/ocean_droplet.png differ diff --git a/docs/installation/images/ocean_droplet_ubuntu.png b/docs/installation/images/ocean_droplet_ubuntu.png new file mode 100644 index 0000000000..668de5b555 Binary files /dev/null and b/docs/installation/images/ocean_droplet_ubuntu.png differ diff --git a/docs/installation/images/ocean_gen_token.png b/docs/installation/images/ocean_gen_token.png new file mode 100644 index 0000000000..044c26acc0 Binary files /dev/null and b/docs/installation/images/ocean_gen_token.png differ diff --git a/docs/installation/images/ocean_save_token.png b/docs/installation/images/ocean_save_token.png new file mode 100644 index 0000000000..a479058d02 Binary files /dev/null and b/docs/installation/images/ocean_save_token.png differ diff --git a/docs/installation/images/ocean_token_create.png b/docs/installation/images/ocean_token_create.png new file mode 100644 index 0000000000..95ce3e880a Binary files /dev/null and b/docs/installation/images/ocean_token_create.png differ diff --git a/docs/installation/index.md b/docs/installation/index.md index 1b8f5e7ad3..383d9d4236 100644 --- a/docs/installation/index.md +++ b/docs/installation/index.md @@ -6,9 +6,9 @@ keywords = ["Docker install "] +++ -# Install Docker Engine +# Install Docker Engine -Docker Engine is supported on Linux, Cloud, Windows, and OS X. Installation instructions are available for the following: +Docker Engine is supported on Linux, Cloud, Windows, and OS X. Installation instructions are available for the following: ## On Linux * [Arch Linux](archlinux.md) @@ -26,18 +26,15 @@ Docker Engine is supported on Linux, Cloud, Windows, and OS X. Installation inst If your linux distribution is not listed above, don't give up yet. To try out Docker on a distribution that is not listed above, go here: [Installation from binaries](binaries.md). ## On Cloud -* [Amazon EC2 Installation](amazon.md) -* [Install on Joyent Public Cloud](joyent.md) -* [Google Cloud Platform](google.md) -* [IBM SoftLayer](softlayer.md) -* [Microsoft Azure platform](azure.md) -* [Rackspace Cloud](rackspace.md) +* [Choose how to Install](cloud.md) +* [Example: Manual install on a cloud provider](cloud-ex-aws.md) +* [Example: Use Docker Machine to provision cloud hosts](cloud-ex-machine-ocean.md) ## On OSX and Windows * [Mac OS X](mac.md) * [Windows](windows.md) -## The Docker Archives +## The Docker Archives Instructions for installing prior releases of Docker can be found in the following docker archives: [Docker v1.7](http://docs.docker.com/v1.7/), [Docker v1.6](http://docs.docker.com/v1.6/), [Docker v1.5](http://docs.docker.com/v1.5/), and [Docker v1.4](http://docs.docker.com/v1.4/). @@ -45,4 +42,3 @@ Instructions for installing prior releases of Docker can be found in the followi * [About Docker](../misc/index.md) * [Support](https://www.docker.com/support/) * [Training](https://training.docker.com//) - diff --git a/docs/installation/joyent.md b/docs/installation/joyent.md deleted file mode 100644 index dd95e85c08..0000000000 --- a/docs/installation/joyent.md +++ /dev/null @@ -1,23 +0,0 @@ - - -## Using Joyent's Triton Elastic Container Service for Docker - -Joyent's Triton Elastic Container Service for Docker uses the native Docker API -and allows you to securely provision containers on bare metal. For detailed -instructions on using Joyent with Docker, see [Deploying Couchbase clusters the -easy way with Triton and -Docker](https://www.joyent.com/blog/couchbase-in-docker-containers) from Joyent. - -Joyent provides a `sdc-docker-setup.sh` script that makes it easy to use Docker -with Joyent. The [Docker API guide for -Triton](https://apidocs.joyent.com/docker) has details on using this script. - -Once you are up and running with Joyent, continue with the [Docker user guide](../userguide/index.md). diff --git a/docs/installation/rackspace.md b/docs/installation/rackspace.md deleted file mode 100644 index 8eac4b2c33..0000000000 --- a/docs/installation/rackspace.md +++ /dev/null @@ -1,87 +0,0 @@ - - -# Rackspace Cloud - -Installing Docker on Ubuntu provided by Rackspace is pretty -straightforward, and you should mostly be able to follow the -[*Ubuntu*](ubuntulinux.md#ubuntu-linux) installation guide. - -**However, there is one caveat:** - -If you are using any Linux not already shipping with the 3.8 kernel you -will need to install it. And this is a little more difficult on -Rackspace. - -Rackspace boots their servers using grub's `menu.lst` -and does not like non `virtual` packages (e.g., Xen compatible) -kernels there, although they do work. This results in -`update-grub` not having the expected result, and -you will need to set the kernel manually. - -**Do not attempt this on a production machine!** - - # update apt - $ apt-get update - - # install the new kernel - $ apt-get install linux-generic-lts-raring - -Great, now you have the kernel installed in `/boot/`, next you need to -make it boot next time. - - # find the exact names - $ find /boot/ -name '*3.8*' - - # this should return some results - -Now you need to manually edit `/boot/grub/menu.lst`, -you will find a section at the bottom with the existing options. Copy -the top one and substitute the new kernel into that. Make sure the new -kernel is on top, and double check the kernel and initrd lines point to -the right files. - -Take special care to double check the kernel and initrd entries. - - # now edit /boot/grub/menu.lst - $ vi /boot/grub/menu.lst - -It will probably look something like this: - - ## ## End Default Options ## - - title Ubuntu 12.04.2 LTS, kernel 3.8.x generic - root (hd0) - kernel /boot/vmlinuz-3.8.0-19-generic root=/dev/xvda1 ro quiet splash console=hvc0 - initrd /boot/initrd.img-3.8.0-19-generic - - title Ubuntu 12.04.2 LTS, kernel 3.2.0-38-virtual - root (hd0) - kernel /boot/vmlinuz-3.2.0-38-virtual root=/dev/xvda1 ro quiet splash console=hvc0 - initrd /boot/initrd.img-3.2.0-38-virtual - - title Ubuntu 12.04.2 LTS, kernel 3.2.0-38-virtual (recovery mode) - root (hd0) - kernel /boot/vmlinuz-3.2.0-38-virtual root=/dev/xvda1 ro quiet splash single - initrd /boot/initrd.img-3.2.0-38-virtual - -Reboot the server (either via command line or console) - - # reboot - -Verify the kernel was updated - - $ uname -a - # Linux docker-12-04 3.8.0-19-generic #30~precise1-Ubuntu SMP Wed May 1 22:26:36 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux - - # nice! 3.8. - -Now you can finish with the [*Ubuntu*](ubuntulinux.md#ubuntu-linux) -instructions. diff --git a/docs/installation/softlayer.md b/docs/installation/softlayer.md deleted file mode 100644 index 8801112fec..0000000000 --- a/docs/installation/softlayer.md +++ /dev/null @@ -1,36 +0,0 @@ - - -# IBM SoftLayer - -1. Create an [IBM SoftLayer account]( - https://www.softlayer.com/cloud-servers/). -2. Log in to the [SoftLayer Customer Portal]( - https://control.softlayer.com/). -3. From the *Devices* menu select [*Device List*](https://control.softlayer.com/devices) -4. Click *Order Devices* on the top right of the window below the menu bar. -5. Under *Virtual Server* click [*Hourly*](https://manage.softlayer.com/Sales/orderHourlyComputingInstance) -6. Create a new *SoftLayer Virtual Server Instance* (VSI) using the default - values for all the fields and choose: - - - The desired location for *Datacenter* - - *Ubuntu Linux 12.04 LTS Precise Pangolin - Minimal Install (64 bit)* - for *Operating System*. - -7. Click the *Continue Your Order* button at the bottom right. -8. Fill out VSI *hostname* and *domain*. -9. Insert the required *User Metadata* and place the order. -10. Then continue with the [*Ubuntu*](ubuntulinux.md#ubuntu-linux) - instructions. - -## What next? - -Continue with the [User Guide](../userguide/index.md). -