Installing Docker on CoreOS
CoreOS is a lightweight OS built for the cloud. It comes prepackaged with Docker, which is a few releases behind the latest version. Since it comes prebuilt with Docker there is little troubleshooting required. We just need to make sure that the right version of CoreOS is picked.
CoreOS runs on a variety of platforms, including Vagrant, Amazon EC2, QEMU/KVM, VMware and OpenStack, and custom hardware. CoreOS uses fleet to manage clusters of containers along with etcd (key value data store).
Installation channels of CoreOS
In our case, we will use stable Release Channels:
First, we will install CoreOS on AWS using the CloudFormation templates. You can find this template at the following link:
https://s3.amazonaws.com/coreos.com/dist/aws/coreos-stable-pv.template
This template provides the following parameters:
- Instance type
- Cluster size
- Discovery URL
- Advertised IP address
- Allow SSH From
- Keypair
These mentioned parameters can be set in the default template, as follows:
{ "Parameters": { "InstanceType": { "Description": "EC2 PV instance type (m3.medium, etc).", "Type": "String", "Default": "m3.medium", "ConstraintDescription": "Must be a valid EC2 PV instance type." }, "ClusterSize": { "Default": "3", "MinValue": "3", "MaxValue": "12", "Description": "Number of nodes in cluster (3-12).", "Type": "Number" }, "DiscoveryURL": { "Description": "An unique etcd cluster discovery URL. Grab a new token from https://discovery.etcd.io/new?size=<your cluster size>", "Type": "String" }, "AdvertisedIPAddress": { "Description": "Use 'private' if your etcd cluster is within one region or 'public' if it spans regions or cloud providers.", "Default": "private", "AllowedValues": [ "private", "public" ], "Type": "String" }, "AllowSSHFrom": { "Description": "The net block (CIDR) that SSH is available to.", "Default": "0.0.0.0/0", "Type": "String" }, "KeyPair": { "Description": "The name of an EC2 Key Pair to allow SSH access to the instance.", "Type": "String" } } }
The following steps will provide the complete walk-through for CoreOS installation on AWS with help of screenshots:
- Select the S3 template to launch:
- Specify the Stack name, KeyPair, and cluster 3:
Troubleshooting
Here are some troubleshooting tips and guidelines, which should be followed during the preceding installation:
- Stack name should not be duplicate
- ClusterSize cannot be lower than 3 and should be a maximum of 12
- InstanceType recommended is
m3.medium
- KeyPair should exist; if it doesn't, the cluster will not launch
SSH into the instance and check the Docker version:
core@ip-10-184-155-153 ~ $ docker --version Docker version 1.9.1, build 9894698