Docker on Ubuntu 16.04 LTS – [Part 04] Docker Compose
Currently, Docker is the most popular and widely used container management system. In most of our enterprise applications nowadays, we do tend to have components running in separate containers. In such an architecture, the “container orchestration” (starting/ shutting down containers and setting up intra-container linkages) is an important factor and the Docker community came up with a solution called Fig, which basically handled this requirement. This uses a single YAML file to orchestrate all your Docker containers and configurations. The popularity of Fig allowed Docker community to plug into its own Docker code base as separate component called “Docker Compose“.
1. Installing Docker Compose
You are required to follow the steps below:
$ sudo curl -o /usr/local/bin/docker-compose -L "https://github.com/docker/compose/releases/download/1.11.2/docker-compose-$(uname -s)-$(uname -m)"
Set the permissions:
$ sudo chmod +x /usr/local/bin/docker-compose
Now check whether it is installed properly:
$ docker-compose -v
2. Running a Container with Docker Compose
Create a directory called “ubuntu” to download an image from GitHub. This will basically download the latest ubuntu distribution as an image to the local.
$ mkdir ubuntu $ cd ubuntu
Once you do above, create a configuration file (docker-compose.yml) as an guideline to create an image.
docker-compose-test: image: ubuntu
Now execute the following:
$ docker-compose up // As an interactive job $ docker-compose up -d // As a daemon job
The above will read the docker-compose.yml and pull the relevant images and up the respective container.
Pulling docker-compose-test (ubuntu:latest)... latest: Pulling from library/ubuntu e0a742c2abfd: Pull complete 486cb8339a27: Pull complete dc6f0d824617: Pull complete 4f7a5649a30e: Pull complete 672363445ad2: Pull complete Digest: sha256:84c334414e2bfdcae99509a6add166bbb4fa4041dc3fa6af08046a66fed3005f Status: Downloaded newer image for ubuntu:latest Creating ubuntu_docker-compose-test_1 Attaching to ubuntu_docker-compose-test_1 ubuntu_docker-compose-test_1 exited with code 0
Now execute the following to see whether an ubuntu:latest image is downloaded and container is created.
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu latest 14f60031763d 4 days ago 120 MB
$ docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5705871fe7ed ubuntu "/bin/bash" 2 minutes ago Exited (0) 2 minutes ago ubuntu_docker-compose-test_1
4. Docker Compose (Official Web URL)
Comments are closed.