Docker 1.13 Announced

Docker 1.13 has been released with numerous new features, improvements, and fixes which would enable users to build better container apps.
 
 
Image Source: blog.docker.com
 
Docker 1.13 adds Compose file support to the ‘docker stack deploy’ command so that services can be deployed using a ‘docker-compose.yml’ file directly. Powering this is a major effort to extend the swarm service API so as to make it more flexible and useful.
 
The following are its advantages.
  • Specifying the number of desired instances for each service
  • Rolling update policies
  • Service constraints
The image given below shows the simple way in which deploying a multi-host and multi-service stack can be conducted.
 
Image Source: blog.docker.com
 
Now, you no longer have to worry if you still need to use the older version of Docker CLI, after it has been updated - The latest Docker 1.13 can now talk to older daemons. Feature negotiation has also been added so that proper errors are returned if a new user is making an attempt to use features which are not supported in the older daemon. The company states that it would go on to make great improvements in inter-operability, making it simpler to manage the Docker installs with different versions from the same machine.
 
The latest Docker version 1.13 introduces a few nifty commands, which would help you to understand the amount of Disk space Docker is using, allowing you to remove the unused data.
  • docker system df will show the used space, similar to the UNIX tool df
  • docker system prune will remove all the unused data.
The company, in its official blog, also stated that Prune can be used to clean up just some types of data. For example, docker volume prune removes unused volumes only.
 
Numerous features have been added to Docker, and Docker CLI now comes with a lot of commands (40 at the time of writing). However, in Docker 1.13, the company has gone ahead and regrouped all the commands to sit under the logical objects it's interacting with. The example provided in the official report is that list and start of containers are now sub-commands of docker container and history is a sub-command of docker image.
 
 
 Image Source: blog.docker.com
 
The company, in its official blog, states,
 
“These changes let us clean up the Docker CLI syntax, improve help text and make Docker simpler to use. The old command syntax is still supported, but we encourage everybody to adopt the new syntax.”
 
Docker service logs is a powerful new experimental command which makes debugging services much easier. Now, with the latest update it simply pulls logs from all containers running a service and streams them to your console.
 
The latest Docker 1.13 adds an experimental Prometheus-style endpoint with basic metrics on containers images and other daemon stats.
 
Docker build now comes with a new experimental squash flag. While squashing, Docker will go on to take the entire file system to layers produced by a build, and collapse them into a single new layer.
 
The company states,
 
“This can simplify the process of creating minimal container images, but may result in slightly higher overhead when images are moved around (because squashed layers can no longer be shared between images). Docker still caches individual layers to make subsequent builds fast.”
 
Docker 1.13 supports compressing the build context which would be sent from CLI to daemon by using the compress flag. This will surely speed up the builds done on remote daemons by reducing the amount of data sent.
 
Docker for AWS and Azure is now also available on beta and ready for production.
 
Docker for Mac and Windows, for both beta and stable channels, will now automatically gain a notification for the latest upgrade.
Up Next