Browse code

Update Dockerfile to be based on 13.10 instead of 12.04 so that we can remove our s3cmd backports need, and so we can have the new linux-libc-dev dependency we need for compiling the btrfs driver without nasty APT hackery

In addition, we've now hard-coded LXC version 0.8 compiled from source so that we can have the most stable dev environment possible.

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

Tianon Gravi authored on 2014/01/28 07:34:46
Showing 1 changed files
... ...
@@ -24,23 +24,23 @@
24 24
 #
25 25
 
26 26
 docker-version	0.6.1
27
-FROM	stackbrew/ubuntu:12.04
27
+FROM	stackbrew/ubuntu:13.10
28 28
 MAINTAINER	Tianon Gravi <admwiggin@gmail.com> (@tianon)
29 29
 
30
-# Add precise-backports to get s3cmd >= 1.1.0 (so we get ENV variable support in our .s3cfg)
31
-RUN	echo 'deb http://archive.ubuntu.com/ubuntu precise-backports main universe' > /etc/apt/sources.list.d/backports.list
32
-
33 30
 # Packaged dependencies
34 31
 RUN	apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -yq \
35 32
 	apt-utils \
36 33
 	aufs-tools \
34
+	automake \
37 35
 	build-essential \
38 36
 	curl \
39 37
 	dpkg-sig \
40 38
 	git \
41 39
 	iptables \
40
+	libapparmor-dev \
41
+	libcap-dev \
42 42
 	libsqlite3-dev \
43
-	lxc \
43
+	linux-libc-dev \
44 44
 	mercurial \
45 45
 	reprepro \
46 46
 	ruby1.9.1 \
... ...
@@ -48,10 +48,14 @@ RUN	apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -yq \
48 48
 	s3cmd=1.1.0* \
49 49
 	--no-install-recommends
50 50
 
51
+# Get and compile LXC 0.8 (since it is the most stable)
52
+RUN	git clone --no-checkout https://github.com/lxc/lxc.git /usr/local/lxc && cd /usr/local/lxc && git checkout -q lxc-0.8.0
53
+RUN	cd /usr/local/lxc && ./autogen.sh && ./configure --disable-docs && make && make install
54
+
51 55
 # Get lvm2 source for compiling statically
52
-RUN	git clone https://git.fedorahosted.org/git/lvm2.git /usr/local/lvm2 && cd /usr/local/lvm2 && git checkout -q v2_02_103
56
+RUN	git clone --no-checkout https://git.fedorahosted.org/git/lvm2.git /usr/local/lvm2 && cd /usr/local/lvm2 && git checkout -q v2_02_103
53 57
 # see https://git.fedorahosted.org/cgit/lvm2.git/refs/tags for release tags
54
-# note: we can't use "git clone -b" above because it requires at least git 1.7.10 to be able to use that on a tag instead of a branch and we only have 1.7.9.5
58
+# note: we don't use "git clone -b" above because it then spews big nasty warnings about 'detached HEAD' state that we can't silence as easily as we can silence them using "git checkout" directly
55 59
 
56 60
 # Compile and install lvm2
57 61
 RUN	cd /usr/local/lvm2 && ./configure --enable-static_link && make device-mapper && make install_device-mapper