Over a million developers have joined DZone.

Docker Announces Docker 1.5

· DevOps Zone

Discover how to optimize your DevOps workflows with our cloud-based automated testing infrastructure, brought to you in partnership with Sauce Labs

If you haven't already heard, the Docker team announced Docker 1.5. In addition to IPv6 support, other major additions include additional Dockerfile features and new API stats. Check out this press release from Docker's blog for all the details:

Written By 

The Docker project team wanted to start the new year out right with something awesome; that’s why we’re super excited to announce the first Docker release for 2015. We’ve smashed many long-standing, annoying bugs and merged a few awesome features that both the community and maintainers are excited about. Let’s check out what’s in Docker 1.5.

IPv6 support

Contributed by: Malte Janduda – Link to PR

You can now allocate an ipv6 address to each container with the new ‘–ipv6’ flag. You can resolve ipv6 addresses from within a container. You can even use this feature to have containers communicate across multiple hosts. For more information on setting up ipv6 and how it works, check out the docs.

Here’s a fun and easy way to try out this new feature:


# run the nginx container

$ docker run -d -p 80:80 --restart always --name ipv6-nginx nginx

# exec into it to change the default config to support ipv6

$ docker exec -it ipv6-nginx bash

# edit the /etc/nginx/conf.d/default.conf

# under listen 80;

# add the following line:

# listen [::]:80

# restart the nginx service

# this will also pop you out of the container

# and back to your host

root@container # service nginx restart

# get the global ipv6 address

$ docker inspect --format="{{.NetworkSettings.GlobalIPv6Address}}" ipv6-nginx

2a00:1450::242:ac11:5e

$ curl -6 -g [2a00:1450::242:ac11:5e]

Read-only containers

Contributed by: Michael Crosby – Link to PR

You can now enable a read-only filesystem for your container via the--read-only flag. The read-only feature allows you to restrict the locations that an application inside a container can write files to. By using this capability in combination with volumes, you can make sure containers only persist data where it can be managed in a known location.

Stats

Contributed by: Michael Crosby – Link to PR

Containers are cool. They allow you to package and run your applications in a portable way and let you set resource constraints on your applications to make sure that no one application can take over an entire machine. In order to choose accurate resource limits for your applications, profiling is required to collect this information.

In Docker 1.5, we introduce a new stats API endpoint and CLI command that will stream live CPU, memory, network IO and block IO for your containers. You can use the API endpoint to build tools that feed live resource information for your containers into your existing monitoring solutions, or build live dashboards directly using the API.

Screen Shot 2015-02-10 at 12.02.42 PM

Specify the Dockerfile to use in build

Contributed by: Doug Davis – Link to PR

This is possibly one of the most requested feature in the past few months: the ability to specify the file to use in a docker build rather than relying on the default Dockerfile.  docker build -f allows you to define multiple Dockerfiles in a single project and specify which one to use at build time. This can be helpful if you require separate Dockerfiles for testing and production environments.

Open Image Spec

Contributed by: Josh Hawn – Link to PR

As we continue to grow the contributor community to the Docker project, we wanted to encourage more work in the area around how Docker constructs images and their layers. As a start, we have documented how Docker currently builds and formats images and their configuration. Our hope is that these details allow contributors to better understand this critical facet of Docker as well as help contribute to future efforts to improve the image format. The v1 image specification can be found here: https://github.com/docker/docker/blob/master/image/spec/v1.md

Acknowledgements

Many people worked hard on the features and fixes included in Docker 1.5. We’d like to thank Daniel Dao Quang Minh, Don Kjer, Harald Albers, Michal Minar, Phil Estes, Qiang Huang, Andrew Vagin, Abin Shahab, and the many other awesome contributors that helped make this release possible.

We would also like to thank people who contributed by testing the successive release candidates.

We hope you enjoy this release! This is just the beginning of a great year for Docker and we’re excited to see what other amazing things we can build together.

Like always, see you on IRC and happy hacking!

Thanks,

–The Docker maintainers–

Download “The DevOps Journey - From Waterfall to Continuous Delivery” to learn learn about the importance of integrating automated testing into the DevOps workflow, brought to you in partnership with Sauce Labs.

Topics:

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}