Errata

Docker Cookbook

Errata for Docker Cookbook

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
Printed Page 23
The first paragraph and the See Also section

The documentation link for the "docker run" command has changed, it is now: https://docs.docker.com/engine/reference/commandline/run/

The book has it as: https://docs.docker.com/reference/run/

Mike  Sep 20, 2019 
Printed Page 28
Solution

The --link option is deprecated now. Docker documentation recommends using bridges instead.

Bart Erven  Nov 22, 2017 
Printed Page 30
Second tip

The second tip about removing all containers seems completely out of place. Is that in the wrong place?

JP Vossen  Jan 09, 2019 
Printed Page 35
1st see also

"Understanding (long URL) volumes" seems awkward. Should it be "Understanding volumes (long URL) "?

JP Vossen  Jan 09, 2019 
Printed Page 39
2nd line of solution

"Let's start with a stop container" seems wrong and is awkward. Maybe "Let's use a stopped container as an example and export..."

JP Vossen  Jan 09, 2019 
Printed Page 58
2nd para

It says that this recipe introduces `docker tag` but in fact that was introduced on page 48 in r2.6 which is all about tags.

JP Vossen  Jan 09, 2019 
PDF Page 70
2nd line

The use of 'than' should be changed to something like 'as of':

so this allows you to give a container the same IP address >than< your host.

Ron Barak  May 24, 2021 
PDF Page 80
2nd paragraph (docker command line)

The previous paragraph mentions a docker container named 'cookbook' however, the command line uses 'cocky_galileo' as the container whose network namespace we use. I think that should be 'cookbook'.

Stefan Puiu  Aug 27, 2015 
PDF Page 80
7th paragraph

set to cookbook and that the IP is 172.17.02. → set to cookbook and that the IP is 172.17.0.2

Ron Barak  May 24, 2021 
PDF Page 97
3rd paragraph

in the file ansible_aws_variables.ym. → in the file ansible_aws_variables.yml.

Ron Barak  May 24, 2021 
PDF Page 98
9th line

Each container will be assigned an IP that can be reachable from other hosts. → Each container will be assigned an IP that is reachable from other hosts.

Ron Barak  May 24, 2021 
Printed Page 135
2nd para up from bottom

Missing "not" in "make sure the node does come back"

JP Vossen  Jan 09, 2019 
Printed Page 279
1st para

"You will NEVER need to monitor..."? Really? The word "never" should not be there. :-)

JP Vossen  Jan 09, 2019 
Printed Page 282
Last line of solution

"The word "not" should not be in "you will NOT press CTRL-C"

JP Vossen  Jan 09, 2019 
Printed Page 308, 309, 313
code

First, thanks for the x-ref to the _Bash Cookbook_ in your preface, since I'm one of the authors. :-)

To that end, this code (used at least 4 places) is awkward:
----
if [ -z "${1}" ] ; then
version="latest"
else
version="${1}"
fi
----

It's a lot simpler to set it like this, see www.bashcookbook.com/bashinfo/source/bash-4.0/doc/bashref.html and search for "${parameter:-word}":
----
version="${1:-latest}"
----

JP Vossen  Jan 09, 2019 
Printed Page 313
code comments

In addition to the awkward $version code, the big comment says "required for sing the cottect image" which should be "required for setting the correct image"

JP Vossen  Jan 09, 2019 
Mobi Page 6752
recipe 7.13 at 6752 / 10643 in mobi version



In the 7.13 recipe, the author first demonstrates the use of etcd to store KV pairs regarding available services. It works, but we may object that it is surprising to launch the etcd daemon on the host itself, and not in a container.

On the second part of the recipe the author shows how to use consul instead of etcd. For me the recipe doesn't work. It may be due to changes in registrator component version but I had to use "consulkv" backend instead on "consul". The reason is that the consul backend relies only on consul "services", whereas "consulkv" uses the simplier KV feature of consul. Because the author assumes the availability of data in consul KV store later (with confd), it is mandatory to switch the backend URL to consulkv:// scheme.
See https://gliderlabs.github.io/registrator/latest/user/backends/#consul-kv

This book is great. The author made a great job. It allows to fully understand the most obscure features of Docker as well as giving really practical advice. Thanks to Sebastien. It definitely deserves a new edition, covering new features of compose, swarm, stack and k8s.

Pierre Laden  Aug 04, 2021