These are the changes required due to the new binaries that containerd introduced.
The rpm, and deb packages now include 5 binaries.
docker, containerd, containerd-shim, ctr, and runc
The tar files also include all 5 binaries.
Signed-off-by: Ken Cochrane <KenCochrane@gmail.com>
| ... | ... |
@@ -6,10 +6,11 @@ FROM debian:jessie |
| 6 | 6 |
|
| 7 | 7 |
RUN apt-get update && apt-get install -y apparmor bash-completion btrfs-tools build-essential curl ca-certificates debhelper dh-apparmor dh-systemd git libapparmor-dev libdevmapper-dev libltdl-dev libsqlite3-dev pkg-config libsystemd-journal-dev --no-install-recommends && rm -rf /var/lib/apt/lists/* |
| 8 | 8 |
|
| 9 |
-ENV GO_VERSION 1.5.3 |
|
| 9 |
+ENV GO_VERSION 1.6 |
|
| 10 | 10 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 11 | 11 |
ENV PATH $PATH:/usr/local/go/bin |
| 12 | 12 |
|
| 13 | 13 |
ENV AUTO_GOPATH 1 |
| 14 | 14 |
|
| 15 | 15 |
ENV DOCKER_BUILDTAGS apparmor selinux |
| 16 |
+ENV RUNC_BUILDTAGS apparmor selinux |
| ... | ... |
@@ -6,10 +6,11 @@ FROM debian:stretch |
| 6 | 6 |
|
| 7 | 7 |
RUN apt-get update && apt-get install -y apparmor bash-completion btrfs-tools build-essential curl ca-certificates debhelper dh-apparmor dh-systemd git libapparmor-dev libdevmapper-dev libltdl-dev libseccomp-dev libsqlite3-dev pkg-config libsystemd-dev --no-install-recommends && rm -rf /var/lib/apt/lists/* |
| 8 | 8 |
|
| 9 |
-ENV GO_VERSION 1.5.3 |
|
| 9 |
+ENV GO_VERSION 1.6 |
|
| 10 | 10 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 11 | 11 |
ENV PATH $PATH:/usr/local/go/bin |
| 12 | 12 |
|
| 13 | 13 |
ENV AUTO_GOPATH 1 |
| 14 | 14 |
|
| 15 | 15 |
ENV DOCKER_BUILDTAGS apparmor seccomp selinux |
| 16 |
+ENV RUNC_BUILDTAGS apparmor seccomp selinux |
| ... | ... |
@@ -7,10 +7,11 @@ FROM debian:wheezy-backports |
| 7 | 7 |
RUN apt-get update && apt-get install -y -t wheezy-backports btrfs-tools --no-install-recommends && rm -rf /var/lib/apt/lists/* |
| 8 | 8 |
RUN apt-get update && apt-get install -y apparmor bash-completion build-essential curl ca-certificates debhelper dh-apparmor dh-systemd git libapparmor-dev libdevmapper-dev libltdl-dev libsqlite3-dev pkg-config --no-install-recommends && rm -rf /var/lib/apt/lists/* |
| 9 | 9 |
|
| 10 |
-ENV GO_VERSION 1.5.3 |
|
| 10 |
+ENV GO_VERSION 1.6 |
|
| 11 | 11 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 12 | 12 |
ENV PATH $PATH:/usr/local/go/bin |
| 13 | 13 |
|
| 14 | 14 |
ENV AUTO_GOPATH 1 |
| 15 | 15 |
|
| 16 | 16 |
ENV DOCKER_BUILDTAGS apparmor selinux |
| 17 |
+ENV RUNC_BUILDTAGS apparmor selinux |
| ... | ... |
@@ -42,6 +42,7 @@ for version in "${versions[@]}"; do
|
| 42 | 42 |
echo >> "$version/Dockerfile" |
| 43 | 43 |
|
| 44 | 44 |
extraBuildTags= |
| 45 |
+ runcBuildTags= |
|
| 45 | 46 |
|
| 46 | 47 |
# this list is sorted alphabetically; please keep it that way |
| 47 | 48 |
packages=( |
| ... | ... |
@@ -64,7 +65,7 @@ for version in "${versions[@]}"; do
|
| 64 | 64 |
# packaging for "sd-journal.h" and libraries varies |
| 65 | 65 |
case "$suite" in |
| 66 | 66 |
precise|wheezy) ;; |
| 67 |
- sid|stretch|wily) packages+=( libsystemd-dev );; |
|
| 67 |
+ sid|stretch|wily|xenial) packages+=( libsystemd-dev );; |
|
| 68 | 68 |
*) packages+=( libsystemd-journal-dev );; |
| 69 | 69 |
esac |
| 70 | 70 |
|
| ... | ... |
@@ -73,9 +74,11 @@ for version in "${versions[@]}"; do
|
| 73 | 73 |
case "$suite" in |
| 74 | 74 |
precise|wheezy|jessie|trusty) |
| 75 | 75 |
packages=( "${packages[@]/libseccomp-dev}" )
|
| 76 |
+ runcBuildTags="apparmor selinux" |
|
| 76 | 77 |
;; |
| 77 | 78 |
*) |
| 78 | 79 |
extraBuildTags+=' seccomp' |
| 80 |
+ runcBuildTags="apparmor seccomp selinux" |
|
| 79 | 81 |
;; |
| 80 | 82 |
esac |
| 81 | 83 |
|
| ... | ... |
@@ -124,4 +127,5 @@ for version in "${versions[@]}"; do
|
| 124 | 124 |
buildTags=$( echo "apparmor selinux $extraBuildTags" | xargs -n1 | sort -n | tr '\n' ' ' | sed -e 's/[[:space:]]*$//' ) |
| 125 | 125 |
|
| 126 | 126 |
echo "ENV DOCKER_BUILDTAGS $buildTags" >> "$version/Dockerfile" |
| 127 |
+ echo "ENV RUNC_BUILDTAGS $runcBuildTags" >> "$version/Dockerfile" |
|
| 127 | 128 |
done |
| ... | ... |
@@ -6,10 +6,11 @@ FROM ubuntu:precise |
| 6 | 6 |
|
| 7 | 7 |
RUN apt-get update && apt-get install -y apparmor bash-completion build-essential curl ca-certificates debhelper dh-apparmor git libapparmor-dev libltdl-dev libsqlite3-dev pkg-config --no-install-recommends && rm -rf /var/lib/apt/lists/* |
| 8 | 8 |
|
| 9 |
-ENV GO_VERSION 1.5.3 |
|
| 9 |
+ENV GO_VERSION 1.6 |
|
| 10 | 10 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 11 | 11 |
ENV PATH $PATH:/usr/local/go/bin |
| 12 | 12 |
|
| 13 | 13 |
ENV AUTO_GOPATH 1 |
| 14 | 14 |
|
| 15 | 15 |
ENV DOCKER_BUILDTAGS apparmor exclude_graphdriver_btrfs exclude_graphdriver_devicemapper selinux |
| 16 |
+ENV RUNC_BUILDTAGS apparmor selinux |
| ... | ... |
@@ -6,10 +6,11 @@ FROM ubuntu:trusty |
| 6 | 6 |
|
| 7 | 7 |
RUN apt-get update && apt-get install -y apparmor bash-completion btrfs-tools build-essential curl ca-certificates debhelper dh-apparmor dh-systemd git libapparmor-dev libdevmapper-dev libltdl-dev libsqlite3-dev pkg-config libsystemd-journal-dev --no-install-recommends && rm -rf /var/lib/apt/lists/* |
| 8 | 8 |
|
| 9 |
-ENV GO_VERSION 1.5.3 |
|
| 9 |
+ENV GO_VERSION 1.6 |
|
| 10 | 10 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 11 | 11 |
ENV PATH $PATH:/usr/local/go/bin |
| 12 | 12 |
|
| 13 | 13 |
ENV AUTO_GOPATH 1 |
| 14 | 14 |
|
| 15 | 15 |
ENV DOCKER_BUILDTAGS apparmor selinux |
| 16 |
+ENV RUNC_BUILDTAGS apparmor selinux |
| ... | ... |
@@ -6,10 +6,11 @@ FROM ubuntu:wily |
| 6 | 6 |
|
| 7 | 7 |
RUN apt-get update && apt-get install -y apparmor bash-completion btrfs-tools build-essential curl ca-certificates debhelper dh-apparmor dh-systemd git libapparmor-dev libdevmapper-dev libltdl-dev libseccomp-dev libsqlite3-dev pkg-config libsystemd-dev --no-install-recommends && rm -rf /var/lib/apt/lists/* |
| 8 | 8 |
|
| 9 |
-ENV GO_VERSION 1.5.3 |
|
| 9 |
+ENV GO_VERSION 1.6 |
|
| 10 | 10 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 11 | 11 |
ENV PATH $PATH:/usr/local/go/bin |
| 12 | 12 |
|
| 13 | 13 |
ENV AUTO_GOPATH 1 |
| 14 | 14 |
|
| 15 | 15 |
ENV DOCKER_BUILDTAGS apparmor seccomp selinux |
| 16 |
+ENV RUNC_BUILDTAGS apparmor seccomp selinux |
| 16 | 17 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,16 @@ |
| 0 |
+# |
|
| 1 |
+# THIS FILE IS AUTOGENERATED; SEE "contrib/builder/deb/amd64/generate.sh"! |
|
| 2 |
+# |
|
| 3 |
+ |
|
| 4 |
+FROM ubuntu:xenial |
|
| 5 |
+ |
|
| 6 |
+RUN apt-get update && apt-get install -y apparmor bash-completion btrfs-tools build-essential curl ca-certificates debhelper dh-apparmor dh-systemd git libapparmor-dev libdevmapper-dev libltdl-dev libseccomp-dev libsqlite3-dev pkg-config libsystemd-dev --no-install-recommends && rm -rf /var/lib/apt/lists/* |
|
| 7 |
+ |
|
| 8 |
+ENV GO_VERSION 1.6 |
|
| 9 |
+RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
|
| 10 |
+ENV PATH $PATH:/usr/local/go/bin |
|
| 11 |
+ |
|
| 12 |
+ENV AUTO_GOPATH 1 |
|
| 13 |
+ |
|
| 14 |
+ENV DOCKER_BUILDTAGS apparmor seccomp selinux |
|
| 15 |
+ENV RUNC_BUILDTAGS apparmor seccomp selinux |
| ... | ... |
@@ -6,13 +6,14 @@ FROM centos:7 |
| 6 | 6 |
|
| 7 | 7 |
RUN yum groupinstall -y "Development Tools" |
| 8 | 8 |
RUN yum -y swap -- remove systemd-container systemd-container-libs -- install systemd systemd-libs |
| 9 |
-RUN yum install -y btrfs-progs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar |
|
| 9 |
+RUN yum install -y btrfs-progs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar git |
|
| 10 | 10 |
|
| 11 |
-ENV GO_VERSION 1.5.3 |
|
| 11 |
+ENV GO_VERSION 1.6 |
|
| 12 | 12 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 13 | 13 |
ENV PATH $PATH:/usr/local/go/bin |
| 14 | 14 |
|
| 15 | 15 |
ENV AUTO_GOPATH 1 |
| 16 | 16 |
|
| 17 | 17 |
ENV DOCKER_BUILDTAGS selinux |
| 18 |
+ENV RUNC_BUILDTAGS selinux |
|
| 18 | 19 |
|
| ... | ... |
@@ -5,13 +5,14 @@ |
| 5 | 5 |
FROM fedora:22 |
| 6 | 6 |
|
| 7 | 7 |
RUN dnf install -y @development-tools fedora-packager |
| 8 |
-RUN dnf install -y btrfs-progs-devel device-mapper-devel glibc-static libseccomp-devel libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar |
|
| 8 |
+RUN dnf install -y btrfs-progs-devel device-mapper-devel glibc-static libseccomp-devel libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar git |
|
| 9 | 9 |
|
| 10 |
-ENV GO_VERSION 1.5.3 |
|
| 10 |
+ENV GO_VERSION 1.6 |
|
| 11 | 11 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 12 | 12 |
ENV PATH $PATH:/usr/local/go/bin |
| 13 | 13 |
|
| 14 | 14 |
ENV AUTO_GOPATH 1 |
| 15 | 15 |
|
| 16 | 16 |
ENV DOCKER_BUILDTAGS seccomp selinux |
| 17 |
+ENV RUNC_BUILDTAGS seccomp selinux |
|
| 17 | 18 |
|
| ... | ... |
@@ -5,13 +5,14 @@ |
| 5 | 5 |
FROM fedora:23 |
| 6 | 6 |
|
| 7 | 7 |
RUN dnf install -y @development-tools fedora-packager |
| 8 |
-RUN dnf install -y btrfs-progs-devel device-mapper-devel glibc-static libseccomp-devel libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar |
|
| 8 |
+RUN dnf install -y btrfs-progs-devel device-mapper-devel glibc-static libseccomp-devel libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar git |
|
| 9 | 9 |
|
| 10 |
-ENV GO_VERSION 1.5.3 |
|
| 10 |
+ENV GO_VERSION 1.6 |
|
| 11 | 11 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 12 | 12 |
ENV PATH $PATH:/usr/local/go/bin |
| 13 | 13 |
|
| 14 | 14 |
ENV AUTO_GOPATH 1 |
| 15 | 15 |
|
| 16 | 16 |
ENV DOCKER_BUILDTAGS seccomp selinux |
| 17 |
+ENV RUNC_BUILDTAGS seccomp selinux |
|
| 17 | 18 |
|
| ... | ... |
@@ -39,6 +39,7 @@ for version in "${versions[@]}"; do
|
| 39 | 39 |
echo >> "$version/Dockerfile" |
| 40 | 40 |
|
| 41 | 41 |
extraBuildTags= |
| 42 |
+ runcBuildTags= |
|
| 42 | 43 |
|
| 43 | 44 |
case "$from" in |
| 44 | 45 |
centos:*) |
| ... | ... |
@@ -77,6 +78,7 @@ for version in "${versions[@]}"; do
|
| 77 | 77 |
sqlite-devel # for "sqlite3.h" |
| 78 | 78 |
systemd-devel # for "sd-journal.h" and libraries |
| 79 | 79 |
tar # older versions of dev-tools do not have tar |
| 80 |
+ git # required for containerd and runc clone |
|
| 80 | 81 |
) |
| 81 | 82 |
|
| 82 | 83 |
case "$from" in |
| ... | ... |
@@ -98,9 +100,11 @@ for version in "${versions[@]}"; do
|
| 98 | 98 |
case "$from" in |
| 99 | 99 |
opensuse:*|oraclelinux:*|centos:7) |
| 100 | 100 |
packages=( "${packages[@]/libseccomp-devel}" )
|
| 101 |
+ runcBuildTags="selinux" |
|
| 101 | 102 |
;; |
| 102 | 103 |
*) |
| 103 | 104 |
extraBuildTags+=' seccomp' |
| 105 |
+ runcBuildTags="seccomp selinux" |
|
| 104 | 106 |
;; |
| 105 | 107 |
esac |
| 106 | 108 |
|
| ... | ... |
@@ -148,6 +152,7 @@ for version in "${versions[@]}"; do
|
| 148 | 148 |
buildTags=$( echo "selinux $extraBuildTags" | xargs -n1 | sort -n | tr '\n' ' ' | sed -e 's/[[:space:]]*$//' ) |
| 149 | 149 |
|
| 150 | 150 |
echo "ENV DOCKER_BUILDTAGS $buildTags" >> "$version/Dockerfile" |
| 151 |
+ echo "ENV RUNC_BUILDTAGS $runcBuildTags" >> "$version/Dockerfile" |
|
| 151 | 152 |
echo >> "$version/Dockerfile" |
| 152 | 153 |
|
| 153 | 154 |
case "$from" in |
| ... | ... |
@@ -5,13 +5,14 @@ |
| 5 | 5 |
FROM opensuse:13.2 |
| 6 | 6 |
|
| 7 | 7 |
RUN zypper --non-interactive install ca-certificates* curl gzip rpm-build |
| 8 |
-RUN zypper --non-interactive install libbtrfs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkg-config selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar systemd-rpm-macros |
|
| 8 |
+RUN zypper --non-interactive install libbtrfs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkg-config selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar git systemd-rpm-macros |
|
| 9 | 9 |
|
| 10 |
-ENV GO_VERSION 1.5.3 |
|
| 10 |
+ENV GO_VERSION 1.6 |
|
| 11 | 11 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 12 | 12 |
ENV PATH $PATH:/usr/local/go/bin |
| 13 | 13 |
|
| 14 | 14 |
ENV AUTO_GOPATH 1 |
| 15 | 15 |
|
| 16 | 16 |
ENV DOCKER_BUILDTAGS selinux |
| 17 |
+ENV RUNC_BUILDTAGS selinux |
|
| 17 | 18 |
|
| ... | ... |
@@ -5,18 +5,19 @@ |
| 5 | 5 |
FROM oraclelinux:6 |
| 6 | 6 |
|
| 7 | 7 |
RUN yum groupinstall -y "Development Tools" |
| 8 |
-RUN yum install -y btrfs-progs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel tar |
|
| 8 |
+RUN yum install -y btrfs-progs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel tar git |
|
| 9 | 9 |
|
| 10 | 10 |
RUN yum install -y yum-utils && curl -o /etc/yum.repos.d/public-yum-ol6.repo http://yum.oracle.com/public-yum-ol6.repo && yum-config-manager -q --enable ol6_UEKR4 |
| 11 | 11 |
RUN yum install -y kernel-uek-devel-4.1.12-32.el6uek |
| 12 | 12 |
|
| 13 |
-ENV GO_VERSION 1.5.3 |
|
| 13 |
+ENV GO_VERSION 1.6 |
|
| 14 | 14 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 15 | 15 |
ENV PATH $PATH:/usr/local/go/bin |
| 16 | 16 |
|
| 17 | 17 |
ENV AUTO_GOPATH 1 |
| 18 | 18 |
|
| 19 | 19 |
ENV DOCKER_BUILDTAGS selinux |
| 20 |
+ENV RUNC_BUILDTAGS selinux |
|
| 20 | 21 |
|
| 21 | 22 |
ENV CGO_CPPFLAGS -D__EXPORTED_HEADERS__ \ |
| 22 | 23 |
-I/usr/src/kernels/4.1.12-32.el6uek.x86_64/arch/x86/include/generated/uapi \ |
| ... | ... |
@@ -5,13 +5,14 @@ |
| 5 | 5 |
FROM oraclelinux:7 |
| 6 | 6 |
|
| 7 | 7 |
RUN yum groupinstall -y "Development Tools" |
| 8 |
-RUN yum install -y --enablerepo=ol7_optional_latest btrfs-progs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar |
|
| 8 |
+RUN yum install -y --enablerepo=ol7_optional_latest btrfs-progs-devel device-mapper-devel glibc-static libselinux-devel libtool-ltdl-devel pkgconfig selinux-policy selinux-policy-devel sqlite-devel systemd-devel tar git |
|
| 9 | 9 |
|
| 10 |
-ENV GO_VERSION 1.5.3 |
|
| 10 |
+ENV GO_VERSION 1.6 |
|
| 11 | 11 |
RUN curl -fSL "https://storage.googleapis.com/golang/go${GO_VERSION}.linux-amd64.tar.gz" | tar xzC /usr/local
|
| 12 | 12 |
ENV PATH $PATH:/usr/local/go/bin |
| 13 | 13 |
|
| 14 | 14 |
ENV AUTO_GOPATH 1 |
| 15 | 15 |
|
| 16 | 16 |
ENV DOCKER_BUILDTAGS selinux |
| 17 |
+ENV RUNC_BUILDTAGS selinux |
|
| 17 | 18 |
|
| ... | ... |
@@ -22,6 +22,10 @@ override_dh_strip: |
| 22 | 22 |
override_dh_auto_install: |
| 23 | 23 |
mkdir -p debian/docker-engine/usr/bin |
| 24 | 24 |
cp -aT "$$(readlink -f bundles/$(VERSION)/dynbinary/docker)" debian/docker-engine/usr/bin/docker |
| 25 |
+ cp -aT /usr/local/bin/containerd debian/docker-engine/usr/bin/docker-containerd |
|
| 26 |
+ cp -aT /usr/local/bin/containerd-shim debian/docker-engine/usr/bin/docker-containerd-shim |
|
| 27 |
+ cp -aT /usr/local/bin/ctr debian/docker-engine/usr/bin/docker-containerd-ctr |
|
| 28 |
+ cp -aT /usr/local/bin/runc debian/docker-engine/usr/bin/docker-runc |
|
| 25 | 29 |
mkdir -p debian/docker-engine/usr/lib/docker |
| 26 | 30 |
|
| 27 | 31 |
override_dh_installinit: |
| ... | ... |
@@ -36,5 +40,8 @@ override_dh_install: |
| 36 | 36 |
dh_install |
| 37 | 37 |
dh_apparmor --profile-name=docker-engine -pdocker-engine |
| 38 | 38 |
|
| 39 |
+override_dh_shlibdeps: |
|
| 40 |
+ dh_shlibdeps --dpkg-shlibdeps-params=--ignore-missing-info |
|
| 41 |
+ |
|
| 39 | 42 |
%: |
| 40 | 43 |
dh $@ --with=bash-completion $(shell command -v dh_systemd_enable > /dev/null 2>&1 && echo --with=systemd) |
| ... | ... |
@@ -124,6 +124,14 @@ export DOCKER_GITCOMMIT=%{_gitcommit}
|
| 124 | 124 |
install -d $RPM_BUILD_ROOT/%{_bindir}
|
| 125 | 125 |
install -p -m 755 bundles/%{_origversion}/dynbinary/docker-%{_origversion} $RPM_BUILD_ROOT/%{_bindir}/docker
|
| 126 | 126 |
|
| 127 |
+# install containerd |
|
| 128 |
+install -p -m 755 /usr/local/bin/containerd $RPM_BUILD_ROOT/%{_bindir}/docker-containerd
|
|
| 129 |
+install -p -m 755 /usr/local/bin/containerd-shim $RPM_BUILD_ROOT/%{_bindir}/docker-containerd-shim
|
|
| 130 |
+install -p -m 755 /usr/local/bin/ctr $RPM_BUILD_ROOT/%{_bindir}/docker-containerd-ctr
|
|
| 131 |
+ |
|
| 132 |
+# install runc |
|
| 133 |
+install -p -m 755 /usr/local/bin/runc $RPM_BUILD_ROOT/%{_bindir}/docker-runc
|
|
| 134 |
+ |
|
| 127 | 135 |
# install udev rules |
| 128 | 136 |
install -d $RPM_BUILD_ROOT/%{_sysconfdir}/udev/rules.d
|
| 129 | 137 |
install -p -m 644 contrib/udev/80-docker.rules $RPM_BUILD_ROOT/%{_sysconfdir}/udev/rules.d/80-docker.rules
|
| ... | ... |
@@ -171,6 +179,10 @@ install -p -m 644 contrib/syntax/nano/Dockerfile.nanorc $RPM_BUILD_ROOT/usr/shar |
| 171 | 171 |
%files |
| 172 | 172 |
%doc AUTHORS CHANGELOG.md CONTRIBUTING.md LICENSE MAINTAINERS NOTICE README.md |
| 173 | 173 |
/%{_bindir}/docker
|
| 174 |
+/%{_bindir}/docker-containerd
|
|
| 175 |
+/%{_bindir}/docker-containerd-shim
|
|
| 176 |
+/%{_bindir}/docker-containerd-ctr
|
|
| 177 |
+/%{_bindir}/docker-runc
|
|
| 174 | 178 |
/%{_sysconfdir}/udev/rules.d/80-docker.rules
|
| 175 | 179 |
%if 0%{?is_systemd}
|
| 176 | 180 |
/%{_unitdir}/docker.service
|
| ... | ... |
@@ -58,9 +58,28 @@ set -e |
| 58 | 58 |
FROM $image |
| 59 | 59 |
WORKDIR /usr/src/docker |
| 60 | 60 |
COPY . /usr/src/docker |
| 61 |
- RUN mkdir -p /go/src/github.com/docker \ |
|
| 61 |
+ RUN mkdir -p /go/src/github.com/docker && mkdir -p /go/src/github.com/opencontainers \ |
|
| 62 | 62 |
&& ln -snf /usr/src/docker /go/src/github.com/docker/docker |
| 63 | 63 |
EOF |
| 64 |
+ |
|
| 65 |
+ # get the RUNC and CONTAINERD commit from the root Dockerfile, this keeps the commits in sync |
|
| 66 |
+ awk '$1 == "ENV" && $2 == "RUNC_COMMIT" { print; exit }' Dockerfile >> "$DEST/$version/Dockerfile.build"
|
|
| 67 |
+ awk '$1 == "ENV" && $2 == "CONTAINERD_COMMIT" { print; exit }' Dockerfile >> "$DEST/$version/Dockerfile.build"
|
|
| 68 |
+ |
|
| 69 |
+ # add runc and containerd compile and install |
|
| 70 |
+ cat >> "$DEST/$version/Dockerfile.build" <<-EOF |
|
| 71 |
+ # Install runc |
|
| 72 |
+ RUN git clone git://github.com/opencontainers/runc.git "/go/src/github.com/opencontainers/runc" \ |
|
| 73 |
+ && cd "/go/src/github.com/opencontainers/runc" \ |
|
| 74 |
+ && git checkout -q "\$RUNC_COMMIT" |
|
| 75 |
+ RUN set -x && export GOPATH="/go" && cd "/go/src/github.com/opencontainers/runc" \ |
|
| 76 |
+ && make BUILDTAGS="\$RUNC_BUILDTAGS" && make install |
|
| 77 |
+ # Install containerd |
|
| 78 |
+ RUN git clone git://github.com/docker/containerd.git "/go/src/github.com/docker/containerd" \ |
|
| 79 |
+ && cd "/go/src/github.com/docker/containerd" \ |
|
| 80 |
+ && git checkout -q "\$CONTAINERD_COMMIT" |
|
| 81 |
+ RUN set -x && export GOPATH="/go" && cd "/go/src/github.com/docker/containerd" && make && make install |
|
| 82 |
+ EOF |
|
| 64 | 83 |
if [ "$DOCKER_EXPERIMENTAL" ]; then |
| 65 | 84 |
echo 'ENV DOCKER_EXPERIMENTAL 1' >> "$DEST/$version/Dockerfile.build" |
| 66 | 85 |
fi |
| ... | ... |
@@ -87,6 +87,26 @@ set -e |
| 87 | 87 |
cat > "$DEST/$version/Dockerfile.build" <<-EOF |
| 88 | 88 |
FROM $image |
| 89 | 89 |
COPY . /usr/src/${rpmName}
|
| 90 |
+ RUN mkdir -p /go/src/github.com/docker && mkdir -p /go/src/github.com/opencontainers |
|
| 91 |
+ EOF |
|
| 92 |
+ |
|
| 93 |
+ # get the RUNC and CONTAINERD commit from the root Dockerfile, this keeps the commits in sync |
|
| 94 |
+ awk '$1 == "ENV" && $2 == "RUNC_COMMIT" { print; exit }' Dockerfile >> "$DEST/$version/Dockerfile.build"
|
|
| 95 |
+ awk '$1 == "ENV" && $2 == "CONTAINERD_COMMIT" { print; exit }' Dockerfile >> "$DEST/$version/Dockerfile.build"
|
|
| 96 |
+ |
|
| 97 |
+ # add runc and containerd compile and install |
|
| 98 |
+ cat >> "$DEST/$version/Dockerfile.build" <<-EOF |
|
| 99 |
+ # Install runc |
|
| 100 |
+ RUN git clone git://github.com/opencontainers/runc.git "/go/src/github.com/opencontainers/runc" \ |
|
| 101 |
+ && cd "/go/src/github.com/opencontainers/runc" \ |
|
| 102 |
+ && git checkout -q "\$RUNC_COMMIT" |
|
| 103 |
+ RUN set -x && export GOPATH="/go" && cd "/go/src/github.com/opencontainers/runc" \ |
|
| 104 |
+ && make BUILDTAGS="\$RUNC_BUILDTAGS" && make install |
|
| 105 |
+ # Install containerd |
|
| 106 |
+ RUN git clone git://github.com/docker/containerd.git "/go/src/github.com/docker/containerd" \ |
|
| 107 |
+ && cd "/go/src/github.com/docker/containerd" \ |
|
| 108 |
+ && git checkout -q "\$CONTAINERD_COMMIT" |
|
| 109 |
+ RUN set -x && export GOPATH="/go" && cd "/go/src/github.com/docker/containerd" && make && make install |
|
| 90 | 110 |
EOF |
| 91 | 111 |
if [ "$DOCKER_EXPERIMENTAL" ]; then |
| 92 | 112 |
echo 'ENV DOCKER_EXPERIMENTAL 1' >> "$DEST/$version/Dockerfile.build" |
| ... | ... |
@@ -97,7 +117,10 @@ set -e |
| 97 | 97 |
WORKDIR /root/rpmbuild |
| 98 | 98 |
RUN ln -sfv /usr/src/${rpmName}/hack/make/.build-rpm SPECS
|
| 99 | 99 |
WORKDIR /root/rpmbuild/SPECS |
| 100 |
- RUN tar -cz -C /usr/src -f /root/rpmbuild/SOURCES/${rpmName}.tar.gz ${rpmName}
|
|
| 100 |
+ RUN tar -r -C /usr/src -f /root/rpmbuild/SOURCES/${rpmName}.tar ${rpmName}
|
|
| 101 |
+ RUN tar -r -C /go/src/github.com/docker -f /root/rpmbuild/SOURCES/${rpmName}.tar containerd
|
|
| 102 |
+ RUN tar -r -C /go/src/github.com/opencontainers -f /root/rpmbuild/SOURCES/${rpmName}.tar runc
|
|
| 103 |
+ RUN gzip /root/rpmbuild/SOURCES/${rpmName}.tar
|
|
| 101 | 104 |
RUN { cat /usr/src/${rpmName}/contrib/builder/rpm/${PACKAGE_ARCH}/changelog; } >> ${rpmName}.spec && tail >&2 ${rpmName}.spec
|
| 102 | 105 |
RUN rpmbuild -ba \ |
| 103 | 106 |
--define '_gitcommit $DOCKER_GITCOMMIT' \ |
| ... | ... |
@@ -19,8 +19,6 @@ for d in "$CROSS/"*/*; do |
| 19 | 19 |
mkdir -p "$DEST/$GOOS/$GOARCH" |
| 20 | 20 |
TGZ="$DEST/$GOOS/$GOARCH/$BINARY_NAME.tgz" |
| 21 | 21 |
|
| 22 |
- mkdir -p "$DEST/build" |
|
| 23 |
- |
|
| 24 | 22 |
mkdir -p "$DEST/build/usr/local/bin" |
| 25 | 23 |
cp -L "$d/$BINARY_FULLNAME" "$DEST/build/usr/local/bin/docker$BINARY_EXTENSION" |
| 26 | 24 |
copy_containerd "$DEST/build/usr/local/bin/" |