Michael Crosby

Docker 1.5: IPv6 support, read-only containers, stats, “named Dockerfiles” and more

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.

Screen Shot 2015-02-10 at 12.00.43

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.

 

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–

 

Read More in the press

infoworld    Zdnet-lightbg-200px   SDTIMES_Logo  eweek

 

Learn More

, , , , ,

Michael Crosby

Docker 1.5: IPv6 support, read-only containers, stats, “named Dockerfiles” and more


3 Responses to “Docker 1.5: IPv6 support, read-only containers, stats, “named Dockerfiles” and more”

  1. Richard

    Hey!

    I’m a regular user of Docker and I’m keen in trying out this new 2015 version. But I have a few questions. Is there an email id I could use? I don’t wanna spam the comments section with too many questions.

    Thanks!

    Reply
  2. Docker 1.5新特性 | 写代码度日的骚年

    […] 原文:https://blog.docker.com/2015/02/docker-1-5-ipv6-support-read-only-containers-stats-named-dockerfiles-… 译文:http://dockerone.com/article/202 译者: 肖劲 […]

    Reply
  3. How to Monitor Containers with cAdvisor and Wavefront

    […] Docker Stats API, which was introduced with Docker 1.5, introduced the ability to stream resource metrics from […]

    Reply

Leave a Reply to How to Monitor Containers with cAdvisor and Wavefront

Click here to cancel reply.

Get the Latest Docker News by Email

Docker Weekly is a newsletter with the latest content on Docker and the agenda for the upcoming weeks.