Browse code

Standardize "apt-get install" usage across the repo

I might have missed some, but I think this is most of the offenders.

Docker-DCO-1.1-Signed-off-by: Andrew Page <admwiggin@gmail.com> (github: tianon)

Tianon Gravi authored on 2014/07/08 03:06:34
Showing 19 changed files
... ...
@@ -28,8 +28,7 @@ FROM	ubuntu:14.04
28 28
 MAINTAINER	Tianon Gravi <admwiggin@gmail.com> (@tianon)
29 29
 
30 30
 # Packaged dependencies
31
-RUN	apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -yq \
32
-	apt-utils \
31
+RUN	apt-get update && apt-get install -y \
33 32
 	aufs-tools \
34 33
 	automake \
35 34
 	btrfs-tools \
... ...
@@ -131,8 +131,7 @@ Here's a typical Docker build process:
131 131
 
132 132
 ```bash
133 133
 FROM ubuntu:12.04
134
-RUN apt-get update
135
-RUN apt-get install -q -y python python-pip curl
134
+RUN apt-get update && apt-get install -y python python-pip curl
136 135
 RUN curl -sSL https://github.com/shykes/helloflask/archive/master.tar.gz | tar -xzv
137 136
 RUN cd helloflask-master && pip install -r requirements.txt
138 137
 ```
... ...
@@ -29,7 +29,7 @@ FROM debian:wheezy
29 29
 MAINTAINER Daniel Mizyrycki <daniel@docker.com>
30 30
 
31 31
 # Install Iceweasel and "sudo"
32
-RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -yq iceweasel sudo
32
+RUN apt-get update && apt-get install -y iceweasel sudo
33 33
 
34 34
 # create sysadmin account
35 35
 RUN useradd -m -d /data -p saIVpsc0EVTwA sysadmin
... ...
@@ -4,7 +4,7 @@
4 4
 FROM 		debian:jessie
5 5
 MAINTAINER	Sven Dowideit <SvenDowideit@docker.com> (@SvenDowideit)
6 6
 
7
-RUN 	apt-get update && apt-get install -yq make python-pip python-setuptools vim-tiny git gettext
7
+RUN 	apt-get update && apt-get install -y make python-pip python-setuptools vim-tiny git gettext
8 8
 
9 9
 RUN	pip install mkdocs
10 10
 
... ...
@@ -65,13 +65,12 @@ The first two steps can be done as part of a Dockerfile, as follows.
65 65
     FROM ubuntu
66 66
     MAINTAINER Eystein Måløy Stenberg <eytein.stenberg@gmail.com>
67 67
 
68
-    RUN apt-get -y install wget lsb-release unzip ca-certificates
68
+    RUN apt-get update && apt-get install -y wget lsb-release unzip ca-certificates
69 69
 
70 70
     # install latest CFEngine
71 71
     RUN wget -qO- http://cfengine.com/pub/gpg.key | apt-key add -
72 72
     RUN echo "deb http://cfengine.com/pub/apt $(lsb_release -cs) main" > /etc/apt/sources.list.d/cfengine-community.list
73
-    RUN apt-get update
74
-    RUN apt-get install cfengine-community
73
+    RUN apt-get update && apt-get install -y cfengine-community
75 74
 
76 75
     # install cfe-docker process management policy
77 76
     RUN wget https://github.com/estenberg/cfe-docker/archive/master.zip -P /tmp/ && unzip /tmp/master.zip -d /tmp/
... ...
@@ -80,7 +79,7 @@ The first two steps can be done as part of a Dockerfile, as follows.
80 80
     RUN rm -rf /tmp/cfe-docker-master /tmp/master.zip
81 81
 
82 82
     # apache2 and openssh are just for testing purposes, install your own apps here
83
-    RUN apt-get -y install openssh-server apache2
83
+    RUN apt-get update && apt-get install -y openssh-server apache2
84 84
     RUN mkdir -p /var/run/sshd
85 85
     RUN echo "root:password" | chpasswd  # need a password for ssh
86 86
 
... ...
@@ -28,19 +28,14 @@ new image.
28 28
 
29 29
     FROM ubuntu:13.04
30 30
     MAINTAINER examples@docker.com
31
-    RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
32
-    RUN apt-get update
33
-    RUN apt-get upgrade -y
34 31
 
35 32
 ## Installing Supervisor
36 33
 
37 34
 We can now install our SSH and Apache daemons as well as Supervisor in
38 35
 our container.
39 36
 
40
-    RUN apt-get install -y openssh-server apache2 supervisor
41
-    RUN mkdir -p /var/lock/apache2 /var/run/apache2
42
-    RUN mkdir -p /var/run/sshd
43
-    RUN mkdir -p /var/log/supervisor
37
+    RUN apt-get update && apt-get install -y openssh-server apache2 supervisor
38
+    RUN mkdir -p /var/lock/apache2 /var/run/apache2 /var/run/sshd /var/log/supervisor
44 39
 
45 40
 Here we're installing the `openssh-server`,
46 41
 `apache2` and `supervisor`
... ...
@@ -9,7 +9,7 @@ FROM		ubuntu
9 9
 MAINTAINER	SvenDowideit@docker.com
10 10
 
11 11
 VOLUME		["/var/cache/apt-cacher-ng"]
12
-RUN		apt-get update ; apt-get install -yq apt-cacher-ng
12
+RUN		apt-get update && apt-get install -y apt-cacher-ng
13 13
 
14 14
 EXPOSE		3142
15
-CMD		chmod 777 /var/cache/apt-cacher-ng ; /etc/init.d/apt-cacher-ng start ; tail -f /var/log/apt-cacher-ng/*
15
+CMD		chmod 777 /var/cache/apt-cacher-ng && /etc/init.d/apt-cacher-ng start && tail -f /var/log/apt-cacher-ng/*
... ...
@@ -28,10 +28,10 @@ Use the following Dockerfile:
28 28
     MAINTAINER  SvenDowideit@docker.com
29 29
 
30 30
     VOLUME      ["/var/cache/apt-cacher-ng"]
31
-    RUN     apt-get update ; apt-get install -yq apt-cacher-ng
31
+    RUN     apt-get update && apt-get install -y apt-cacher-ng
32 32
 
33 33
     EXPOSE      3142
34
-    CMD     chmod 777 /var/cache/apt-cacher-ng ; /etc/init.d/apt-cacher-ng start ; tail -f /var/log/apt-cacher-ng/*
34
+    CMD     chmod 777 /var/cache/apt-cacher-ng && /etc/init.d/apt-cacher-ng start && tail -f /var/log/apt-cacher-ng/*
35 35
 
36 36
 To build the image using:
37 37
 
... ...
@@ -61,7 +61,7 @@ a local version of a common base:
61 61
 
62 62
     FROM ubuntu
63 63
     RUN  echo 'Acquire::http { Proxy "http://dockerhost:3142"; };' >> /etc/apt/apt.conf.d/01proxy
64
-    RUN apt-get update ; apt-get install vim git
64
+    RUN apt-get update && apt-get install -y vim git
65 65
 
66 66
     # docker build -t my_ubuntu .
67 67
 
... ...
@@ -65,13 +65,12 @@ a MongoDB repository file for the package manager.
65 65
 After this initial preparation we can update our packages and install MongoDB.
66 66
 
67 67
     # Update apt-get sources AND install MongoDB
68
-    RUN apt-get update
69
-    RUN apt-get install -y -q mongodb-org
68
+    RUN apt-get update && apt-get install -y mongodb-org
70 69
 
71 70
 > **Tip:** You can install a specific version of MongoDB by using a list
72 71
 > of required packages with versions, e.g.:
73 72
 > 
74
->     RUN apt-get install -y -q mongodb-org=2.6.1 mongodb-org-server=2.6.1 mongodb-org-shell=2.6.1 mongodb-org-mongos=2.6.1 mongodb-org-tools=2.6.1
73
+>     RUN apt-get update && apt-get install -y mongodb-org=2.6.1 mongodb-org-server=2.6.1 mongodb-org-shell=2.6.1 mongodb-org-mongos=2.6.1 mongodb-org-tools=2.6.1
75 74
 
76 75
 MongoDB requires a data directory. Let's create it as the final step of our
77 76
 installation instructions.
... ...
@@ -11,8 +11,7 @@ RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
11 11
 RUN echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | tee /etc/apt/sources.list.d/10gen.list
12 12
 
13 13
 # Update apt-get sources AND install MongoDB
14
-RUN apt-get update
15
-RUN apt-get install -y -q mongodb-org
14
+RUN apt-get update && apt-get install -y mongodb-org
16 15
 
17 16
 # Create the MongoDB data directory
18 17
 RUN mkdir -p /data/db
... ...
@@ -20,5 +19,5 @@ RUN mkdir -p /data/db
20 20
 # Expose port #27017 from the container to the host
21 21
 EXPOSE 27017
22 22
 
23
-# Set usr/bin/mongod as the dockerized entry-point application
24
-ENTRYPOINT usr/bin/mongod
23
+# Set /usr/bin/mongod as the dockerized entry-point application
24
+ENTRYPOINT ["/usr/bin/mongod"]
... ...
@@ -13,17 +13,13 @@ RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B97B0AFCAA
13 13
 #     of PostgreSQL, ``9.3``.
14 14
 RUN echo "deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main" > /etc/apt/sources.list.d/pgdg.list
15 15
 
16
-# Update the Ubuntu and PostgreSQL repository indexes
17
-RUN apt-get update
18
-
19 16
 # Install ``python-software-properties``, ``software-properties-common`` and PostgreSQL 9.3
20 17
 #  There are some warnings (in red) that show up during the build. You can hide
21 18
 #  them by prefixing each apt-get statement with DEBIAN_FRONTEND=noninteractive
22
-RUN apt-get -y -q install python-software-properties software-properties-common
23
-RUN apt-get -y -q install postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3
19
+RUN apt-get update && apt-get install -y python-software-properties software-properties-common postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3
24 20
 
25 21
 # Note: The official Debian and Ubuntu images automatically ``apt-get clean``
26
-# after each ``apt-get`` 
22
+# after each ``apt-get``
27 23
 
28 24
 # Run the rest of the commands as the ``postgres`` user created by the ``postgres-9.3`` package when it was ``apt-get installed``
29 25
 USER postgres
... ...
@@ -35,17 +35,13 @@ Start by creating a new `Dockerfile`:
35 35
     #     of PostgreSQL, ``9.3``.
36 36
     RUN echo "deb http://apt.postgresql.org/pub/repos/apt/ precise-pgdg main" > /etc/apt/sources.list.d/pgdg.list
37 37
 
38
-    # Update the Ubuntu and PostgreSQL repository indexes
39
-    RUN apt-get update
40
-
41 38
     # Install ``python-software-properties``, ``software-properties-common`` and PostgreSQL 9.3
42 39
     #  There are some warnings (in red) that show up during the build. You can hide
43 40
     #  them by prefixing each apt-get statement with DEBIAN_FRONTEND=noninteractive
44
-    RUN apt-get -y -q install python-software-properties software-properties-common
45
-    RUN apt-get -y -q install postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3
41
+    RUN apt-get update && apt-get install -y python-software-properties software-properties-common postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3
46 42
 
47 43
     # Note: The official Debian and Ubuntu images automatically ``apt-get clean``
48
-    # after each ``apt-get`` 
44
+    # after each ``apt-get``
49 45
 
50 46
     # Run the rest of the commands as the ``postgres`` user created by the ``postgres-9.3`` package when it was ``apt-get installed``
51 47
     USER postgres
... ...
@@ -13,8 +13,7 @@ Firstly, we create a `Dockerfile` for our new Redis
13 13
 image.
14 14
 
15 15
     FROM        ubuntu:12.10
16
-    RUN         apt-get update
17
-    RUN         apt-get -y install redis-server
16
+    RUN         apt-get update && apt-get install -y redis-server
18 17
     EXPOSE      6379
19 18
     ENTRYPOINT  ["/usr/bin/redis-server"]
20 19
 
... ...
@@ -49,9 +48,9 @@ container to only this container.
49 49
 Once inside our freshly created container we need to install Redis to
50 50
 get the `redis-cli` binary to test our connection.
51 51
 
52
-    $ apt-get update
53
-    $ apt-get -y install redis-server
54
-    $ service redis-server stop
52
+    $ sudo apt-get update
53
+    $ sudo apt-get install redis-server
54
+    $ sudo service redis-server stop
55 55
 
56 56
 As we've used the `--link redis:db` option, Docker
57 57
 has created some environment variables in our web application container.
... ...
@@ -25,13 +25,6 @@ of. We'll use [Ubuntu](https://registry.hub.docker.com/_/ubuntu/) (tag:
25 25
     FROM ubuntu:latest
26 26
     MAINTAINER Hector Castro hector@basho.com
27 27
 
28
-Next, we update the APT cache and apply any updates:
29
-
30
-    # Update the APT cache
31
-    RUN sed -i.bak 's/main$/main universe/' /etc/apt/sources.list
32
-    RUN apt-get update
33
-    RUN apt-get upgrade -y
34
-
35 28
 After that, we install and setup a few dependencies:
36 29
 
37 30
  - `curl` is used to download Basho's APT
... ...
@@ -46,7 +39,7 @@ After that, we install and setup a few dependencies:
46 46
 <!-- -->
47 47
 
48 48
     # Install and setup project dependencies
49
-    RUN apt-get install -y curl lsb-release supervisor openssh-server
49
+    RUN apt-get update && apt-get install -y curl lsb-release supervisor openssh-server
50 50
 
51 51
     RUN mkdir -p /var/run/sshd
52 52
     RUN mkdir -p /var/log/supervisor
... ...
@@ -61,23 +54,14 @@ Next, we add Basho's APT repository:
61 61
 
62 62
     RUN curl -sSL http://apt.basho.com/gpg/basho.apt.key | apt-key add --
63 63
     RUN echo "deb http://apt.basho.com $(lsb_release -cs) main" > /etc/apt/sources.list.d/basho.list
64
-    RUN apt-get update
65 64
 
66 65
 After that, we install Riak and alter a few defaults:
67 66
 
68 67
     # Install Riak and prepare it to run
69
-    RUN apt-get install -y riak
68
+    RUN apt-get update && apt-get install -y riak
70 69
     RUN sed -i.bak 's/127.0.0.1/0.0.0.0/' /etc/riak/app.config
71 70
     RUN echo "ulimit -n 4096" >> /etc/default/riak
72 71
 
73
-Almost there. Next, we add a hack to get us by the lack of
74
-`initctl`:
75
-
76
-    # Hack for initctl
77
-    # See: https://github.com/docker/docker/issues/1024
78
-    RUN dpkg-divert --local --rename --add /sbin/initctl
79
-    RUN ln -s /bin/true /sbin/initctl
80
-
81 72
 Then, we expose the Riak Protocol Buffers and HTTP interfaces, along
82 73
 with SSH:
83 74
 
... ...
@@ -5,10 +5,7 @@
5 5
 FROM    ubuntu:12.04
6 6
 MAINTAINER Thatcher R. Peskens "thatcher@dotcloud.com"
7 7
 
8
-# make sure the package repository is up to date
9
-RUN apt-get update
10
-
11
-RUN apt-get install -y openssh-server
8
+RUN apt-get update && apt-get install -y openssh-server
12 9
 RUN mkdir /var/run/sshd
13 10
 RUN echo 'root:screencast' |chpasswd
14 11
 
... ...
@@ -15,10 +15,7 @@ quick access to a test container.
15 15
     FROM     ubuntu:12.04
16 16
     MAINTAINER Thatcher R. Peskens "thatcher@dotcloud.com"
17 17
 
18
-    # make sure the package repository is up to date
19
-    RUN apt-get update
20
-
21
-    RUN apt-get install -y openssh-server
18
+    RUN apt-get update && apt-get install -y openssh-server
22 19
     RUN mkdir /var/run/sshd
23 20
     RUN echo 'root:screencast' |chpasswd
24 21
 
... ...
@@ -516,23 +516,16 @@ For example you might add something like this:
516 516
     FROM      ubuntu
517 517
     MAINTAINER Victor Vieux <victor@docker.com>
518 518
 
519
-    # make sure the package repository is up to date
520
-    RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
521
-    RUN apt-get update
522
-
523
-    RUN apt-get install -y inotify-tools nginx apache2 openssh-server
519
+    RUN apt-get update && apt-get install -y inotify-tools nginx apache2 openssh-server
524 520
 
525 521
     # Firefox over VNC
526 522
     #
527 523
     # VERSION               0.3
528 524
 
529 525
     FROM ubuntu
530
-    # make sure the package repository is up to date
531
-    RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
532
-    RUN apt-get update
533 526
 
534 527
     # Install vnc, xvfb in order to create a 'fake' display and firefox
535
-    RUN apt-get install -y x11vnc xvfb firefox
528
+    RUN apt-get update && apt-get install -y x11vnc xvfb firefox
536 529
     RUN mkdir /.vnc
537 530
     # Setup a password
538 531
     RUN x11vnc -storepasswd 1234 ~/.vnc/passwd
... ...
@@ -245,8 +245,7 @@ example now for building our own Sinatra image for our development team.
245 245
     # This is a comment
246 246
     FROM ubuntu:14.04
247 247
     MAINTAINER Kate Smith <ksmith@example.com>
248
-    RUN apt-get -qq update
249
-    RUN apt-get -qqy install ruby ruby-dev
248
+    RUN apt-get update && apt-get install -y ruby ruby-dev
250 249
     RUN gem install sinatra
251 250
 
252 251
 Let's look at what our `Dockerfile` does. Each instruction prefixes a statement and is capitalized.
... ...
@@ -272,38 +271,168 @@ Sinatra gem.
272 272
 Now let's take our `Dockerfile` and use the `docker build` command to build an image.
273 273
 
274 274
     $ sudo docker build -t="ouruser/sinatra:v2" .
275
-    Uploading context  2.56 kB
276
-    Uploading context
275
+    Sending build context to Docker daemon 2.048 kB
276
+    Sending build context to Docker daemon 
277 277
     Step 0 : FROM ubuntu:14.04
278
-     ---> 99ec81b80c55
278
+     ---> e54ca5efa2e9
279 279
     Step 1 : MAINTAINER Kate Smith <ksmith@example.com>
280
-     ---> Running in 7c5664a8a0c1
281
-     ---> 2fa8ca4e2a13
282
-    Removing intermediate container 7c5664a8a0c1
283
-    Step 2 : RUN apt-get -qq update
284
-     ---> Running in b07cc3fb4256
285
-     ---> 50d21070ec0c
286
-    Removing intermediate container b07cc3fb4256
287
-    Step 3 : RUN apt-get -qqy install ruby ruby-dev
288
-     ---> Running in a5b038dd127e
280
+     ---> Using cache
281
+     ---> 851baf55332b
282
+    Step 2 : RUN apt-get update && apt-get install -y ruby ruby-dev
283
+     ---> Running in 3a2558904e9b
289 284
     Selecting previously unselected package libasan0:amd64.
290 285
     (Reading database ... 11518 files and directories currently installed.)
291 286
     Preparing to unpack .../libasan0_4.8.2-19ubuntu1_amd64.deb ...
292
-    . . .
287
+    Unpacking libasan0:amd64 (4.8.2-19ubuntu1) ...
288
+    Selecting previously unselected package libatomic1:amd64.
289
+    Preparing to unpack .../libatomic1_4.8.2-19ubuntu1_amd64.deb ...
290
+    Unpacking libatomic1:amd64 (4.8.2-19ubuntu1) ...
291
+    Selecting previously unselected package libgmp10:amd64.
292
+    Preparing to unpack .../libgmp10_2%3a5.1.3+dfsg-1ubuntu1_amd64.deb ...
293
+    Unpacking libgmp10:amd64 (2:5.1.3+dfsg-1ubuntu1) ...
294
+    Selecting previously unselected package libisl10:amd64.
295
+    Preparing to unpack .../libisl10_0.12.2-1_amd64.deb ...
296
+    Unpacking libisl10:amd64 (0.12.2-1) ...
297
+    Selecting previously unselected package libcloog-isl4:amd64.
298
+    Preparing to unpack .../libcloog-isl4_0.18.2-1_amd64.deb ...
299
+    Unpacking libcloog-isl4:amd64 (0.18.2-1) ...
300
+    Selecting previously unselected package libgomp1:amd64.
301
+    Preparing to unpack .../libgomp1_4.8.2-19ubuntu1_amd64.deb ...
302
+    Unpacking libgomp1:amd64 (4.8.2-19ubuntu1) ...
303
+    Selecting previously unselected package libitm1:amd64.
304
+    Preparing to unpack .../libitm1_4.8.2-19ubuntu1_amd64.deb ...
305
+    Unpacking libitm1:amd64 (4.8.2-19ubuntu1) ...
306
+    Selecting previously unselected package libmpfr4:amd64.
307
+    Preparing to unpack .../libmpfr4_3.1.2-1_amd64.deb ...
308
+    Unpacking libmpfr4:amd64 (3.1.2-1) ...
309
+    Selecting previously unselected package libquadmath0:amd64.
310
+    Preparing to unpack .../libquadmath0_4.8.2-19ubuntu1_amd64.deb ...
311
+    Unpacking libquadmath0:amd64 (4.8.2-19ubuntu1) ...
312
+    Selecting previously unselected package libtsan0:amd64.
313
+    Preparing to unpack .../libtsan0_4.8.2-19ubuntu1_amd64.deb ...
314
+    Unpacking libtsan0:amd64 (4.8.2-19ubuntu1) ...
315
+    Selecting previously unselected package libyaml-0-2:amd64.
316
+    Preparing to unpack .../libyaml-0-2_0.1.4-3ubuntu3_amd64.deb ...
317
+    Unpacking libyaml-0-2:amd64 (0.1.4-3ubuntu3) ...
318
+    Selecting previously unselected package libmpc3:amd64.
319
+    Preparing to unpack .../libmpc3_1.0.1-1ubuntu1_amd64.deb ...
320
+    Unpacking libmpc3:amd64 (1.0.1-1ubuntu1) ...
321
+    Selecting previously unselected package openssl.
322
+    Preparing to unpack .../openssl_1.0.1f-1ubuntu2.4_amd64.deb ...
323
+    Unpacking openssl (1.0.1f-1ubuntu2.4) ...
324
+    Selecting previously unselected package ca-certificates.
325
+    Preparing to unpack .../ca-certificates_20130906ubuntu2_all.deb ...
326
+    Unpacking ca-certificates (20130906ubuntu2) ...
327
+    Selecting previously unselected package manpages.
328
+    Preparing to unpack .../manpages_3.54-1ubuntu1_all.deb ...
329
+    Unpacking manpages (3.54-1ubuntu1) ...
330
+    Selecting previously unselected package binutils.
331
+    Preparing to unpack .../binutils_2.24-5ubuntu3_amd64.deb ...
332
+    Unpacking binutils (2.24-5ubuntu3) ...
333
+    Selecting previously unselected package cpp-4.8.
334
+    Preparing to unpack .../cpp-4.8_4.8.2-19ubuntu1_amd64.deb ...
335
+    Unpacking cpp-4.8 (4.8.2-19ubuntu1) ...
336
+    Selecting previously unselected package cpp.
337
+    Preparing to unpack .../cpp_4%3a4.8.2-1ubuntu6_amd64.deb ...
338
+    Unpacking cpp (4:4.8.2-1ubuntu6) ...
339
+    Selecting previously unselected package libgcc-4.8-dev:amd64.
340
+    Preparing to unpack .../libgcc-4.8-dev_4.8.2-19ubuntu1_amd64.deb ...
341
+    Unpacking libgcc-4.8-dev:amd64 (4.8.2-19ubuntu1) ...
342
+    Selecting previously unselected package gcc-4.8.
343
+    Preparing to unpack .../gcc-4.8_4.8.2-19ubuntu1_amd64.deb ...
344
+    Unpacking gcc-4.8 (4.8.2-19ubuntu1) ...
345
+    Selecting previously unselected package gcc.
346
+    Preparing to unpack .../gcc_4%3a4.8.2-1ubuntu6_amd64.deb ...
347
+    Unpacking gcc (4:4.8.2-1ubuntu6) ...
348
+    Selecting previously unselected package libc-dev-bin.
349
+    Preparing to unpack .../libc-dev-bin_2.19-0ubuntu6_amd64.deb ...
350
+    Unpacking libc-dev-bin (2.19-0ubuntu6) ...
351
+    Selecting previously unselected package linux-libc-dev:amd64.
352
+    Preparing to unpack .../linux-libc-dev_3.13.0-30.55_amd64.deb ...
353
+    Unpacking linux-libc-dev:amd64 (3.13.0-30.55) ...
354
+    Selecting previously unselected package libc6-dev:amd64.
355
+    Preparing to unpack .../libc6-dev_2.19-0ubuntu6_amd64.deb ...
356
+    Unpacking libc6-dev:amd64 (2.19-0ubuntu6) ...
357
+    Selecting previously unselected package ruby.
358
+    Preparing to unpack .../ruby_1%3a1.9.3.4_all.deb ...
359
+    Unpacking ruby (1:1.9.3.4) ...
360
+    Selecting previously unselected package ruby1.9.1.
361
+    Preparing to unpack .../ruby1.9.1_1.9.3.484-2ubuntu1_amd64.deb ...
362
+    Unpacking ruby1.9.1 (1.9.3.484-2ubuntu1) ...
363
+    Selecting previously unselected package libruby1.9.1.
364
+    Preparing to unpack .../libruby1.9.1_1.9.3.484-2ubuntu1_amd64.deb ...
365
+    Unpacking libruby1.9.1 (1.9.3.484-2ubuntu1) ...
366
+    Selecting previously unselected package manpages-dev.
367
+    Preparing to unpack .../manpages-dev_3.54-1ubuntu1_all.deb ...
368
+    Unpacking manpages-dev (3.54-1ubuntu1) ...
369
+    Selecting previously unselected package ruby1.9.1-dev.
370
+    Preparing to unpack .../ruby1.9.1-dev_1.9.3.484-2ubuntu1_amd64.deb ...
371
+    Unpacking ruby1.9.1-dev (1.9.3.484-2ubuntu1) ...
372
+    Selecting previously unselected package ruby-dev.
373
+    Preparing to unpack .../ruby-dev_1%3a1.9.3.4_all.deb ...
374
+    Unpacking ruby-dev (1:1.9.3.4) ...
375
+    Setting up libasan0:amd64 (4.8.2-19ubuntu1) ...
376
+    Setting up libatomic1:amd64 (4.8.2-19ubuntu1) ...
377
+    Setting up libgmp10:amd64 (2:5.1.3+dfsg-1ubuntu1) ...
378
+    Setting up libisl10:amd64 (0.12.2-1) ...
379
+    Setting up libcloog-isl4:amd64 (0.18.2-1) ...
380
+    Setting up libgomp1:amd64 (4.8.2-19ubuntu1) ...
381
+    Setting up libitm1:amd64 (4.8.2-19ubuntu1) ...
382
+    Setting up libmpfr4:amd64 (3.1.2-1) ...
383
+    Setting up libquadmath0:amd64 (4.8.2-19ubuntu1) ...
384
+    Setting up libtsan0:amd64 (4.8.2-19ubuntu1) ...
385
+    Setting up libyaml-0-2:amd64 (0.1.4-3ubuntu3) ...
386
+    Setting up libmpc3:amd64 (1.0.1-1ubuntu1) ...
387
+    Setting up openssl (1.0.1f-1ubuntu2.4) ...
388
+    Setting up ca-certificates (20130906ubuntu2) ...
389
+    debconf: unable to initialize frontend: Dialog
390
+    debconf: (TERM is not set, so the dialog frontend is not usable.)
391
+    debconf: falling back to frontend: Readline
392
+    debconf: unable to initialize frontend: Readline
393
+    debconf: (This frontend requires a controlling tty.)
394
+    debconf: falling back to frontend: Teletype
395
+    Setting up manpages (3.54-1ubuntu1) ...
396
+    Setting up binutils (2.24-5ubuntu3) ...
397
+    Setting up cpp-4.8 (4.8.2-19ubuntu1) ...
398
+    Setting up cpp (4:4.8.2-1ubuntu6) ...
399
+    Setting up libgcc-4.8-dev:amd64 (4.8.2-19ubuntu1) ...
400
+    Setting up gcc-4.8 (4.8.2-19ubuntu1) ...
401
+    Setting up gcc (4:4.8.2-1ubuntu6) ...
402
+    Setting up libc-dev-bin (2.19-0ubuntu6) ...
403
+    Setting up linux-libc-dev:amd64 (3.13.0-30.55) ...
404
+    Setting up libc6-dev:amd64 (2.19-0ubuntu6) ...
405
+    Setting up manpages-dev (3.54-1ubuntu1) ...
406
+    Setting up libruby1.9.1 (1.9.3.484-2ubuntu1) ...
407
+    Setting up ruby1.9.1-dev (1.9.3.484-2ubuntu1) ...
408
+    Setting up ruby-dev (1:1.9.3.4) ...
293 409
     Setting up ruby (1:1.9.3.4) ...
294 410
     Setting up ruby1.9.1 (1.9.3.484-2ubuntu1) ...
295 411
     Processing triggers for libc-bin (2.19-0ubuntu6) ...
296
-     ---> 2acb20f17878
297
-    Removing intermediate container a5b038dd127e
298
-    Step 4 : RUN gem install sinatra
299
-     ---> Running in 5e9d0065c1f7
300
-    . . .
412
+    Processing triggers for ca-certificates (20130906ubuntu2) ...
413
+    Updating certificates in /etc/ssl/certs... 164 added, 0 removed; done.
414
+    Running hooks in /etc/ca-certificates/update.d....done.
415
+     ---> c55c31703134
416
+    Removing intermediate container 3a2558904e9b
417
+    Step 3 : RUN gem install sinatra
418
+     ---> Running in 6b81cb6313e5
419
+    unable to convert "\xC3" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for README.rdoc, skipping
420
+    unable to convert "\xC3" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to US-ASCII for README.rdoc, skipping
421
+    Successfully installed rack-1.5.2
422
+    Successfully installed tilt-1.4.1
301 423
     Successfully installed rack-protection-1.5.3
302 424
     Successfully installed sinatra-1.4.5
303 425
     4 gems installed
304
-     ---> 324104cde6ad
305
-    Removing intermediate container 5e9d0065c1f7
306
-    Successfully built 324104cde6ad
426
+    Installing ri documentation for rack-1.5.2...
427
+    Installing ri documentation for tilt-1.4.1...
428
+    Installing ri documentation for rack-protection-1.5.3...
429
+    Installing ri documentation for sinatra-1.4.5...
430
+    Installing RDoc documentation for rack-1.5.2...
431
+    Installing RDoc documentation for tilt-1.4.1...
432
+    Installing RDoc documentation for rack-protection-1.5.3...
433
+    Installing RDoc documentation for sinatra-1.4.5...
434
+     ---> 97feabe5d2ed
435
+    Removing intermediate container 6b81cb6313e5
436
+    Successfully built 97feabe5d2ed
307 437
 
308 438
 We've specified our `docker build` command and used the `-t` flag to identify
309 439
 our new image as belonging to the user `ouruser`, the repository name `sinatra`
... ...
@@ -290,7 +290,8 @@ echo deb $(s3_url)/ubuntu docker main > /etc/apt/sources.list.d/docker.list
290 290
 apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
291 291
 
292 292
 # Install docker
293
-apt-get update ; apt-get install -y lxc-docker
293
+apt-get update
294
+apt-get install -y lxc-docker
294 295
 
295 296
 #
296 297
 # Alternatively, just use the curl-able install.sh script provided at $(s3_url)