%define debug_package %{nil} %define __os_install_post %{nil} Summary: Docker Name: docker Version: 1.13.1 Release: 4%{?dist} License: ASL 2.0 URL: http://docs.docker.com Group: Applications/File Vendor: VMware, Inc. Distribution: Photon #Git commits must be in sync with docker/hack/dockerfile/binaries-commits Source0: https://github.com/docker/moby/archive/moby-%{version}.tar.gz %define sha1 moby=eb67f8c60bd132d8917335ebf92d90020ba52d27 %define DOCKER_COMMIT 092cba3 Source1: https://github.com/docker/containerd/tree/containerd-aa8187d.tar.gz %define CONTAINERD_COMMIT aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1 %define sha1 containerd=b8aac40b423e80028ec6b7ff5cca1ccaab617d86 Source2: https://github.com/docker/runc/tree/runc-9df8b30.tar.gz %define sha1 runc=35d0c90f634d2327356e7268ff73ecbffdd65d82 %define RUNC_COMMIT 9df8b306d01f59d3a8029be411de015b7304dd8f Source3: https://github.com/docker/libnetwork/tree/libnetwork-0f53435.tar.gz %define sha1 libnetwork=a63774a38bec3aba4b1ff7a0b3e748960da2048b %define LIBNETWORK_COMMIT 0f534354b813003a754606689722fe253101bc4e Source4: docker.service Source5: docker-containerd.service Source6: docker-completion.bash BuildRequires: systemd BuildRequires: device-mapper-devel BuildRequires: btrfs-progs-devel BuildRequires: libseccomp BuildRequires: libseccomp-devel BuildRequires: unzip BuildRequires: go BuildRequires: findutils BuildRequires: sed Requires: libgcc Requires: glibc Requires: libseccomp Requires: systemd Requires: device-mapper-libs %description Docker is a platform for developers and sysadmins to develop, ship and run applications. %prep %setup -q -c %setup -T -D -a 1 %setup -T -D -a 2 %setup -T -D -a 3 #Fix containerd git commit/branch find containerd-%{CONTAINERD_COMMIT} -name Makefile \ -exec sed -i 's/^GIT_COMMIT :=.*$/GIT_COMMIT := %{CONTAINERD_COMMIT}/g' {} \; \ -exec sed -i 's/^GIT_BRANCH :=.*$/GIT_BRANCH := %{name}-%{version}/g' {} \; #Fix runc git commit/branch find runc-%{RUNC_COMMIT} -name Makefile \ -exec sed -i 's/^GIT_COMMIT :=.*$/GIT_COMMIT := %{RUNC_COMMIT}/g' {} \; \ -exec sed -i 's/^COMMIT :=.*$/COMMIT := %{RUNC_COMMIT}/g' {} \; \ -exec sed -i 's/^COMMIT_NO :=.*$/COMMIT_NO := %{RUNC_COMMIT}/g' {} \; \ -exec sed -i 's/^GIT_BRANCH :=.*$/GIT_BRANCH := %{name}-%{version}/g' {} \; #Fix docker git commit/branch find moby-%{version} -name Makefile \ -exec sed -i 's/^GIT_COMMIT :=.*$/GIT_COMMIT := %{DOCKER_COMMIT}/g' {} \; \ -exec sed -i 's/^GIT_BRANCH :=.*$/GIT_BRANCH := %{name}-%{version}/g' {} \; #Fail if there is still "shell git" invocation find -name Makefile -exec grep "shell git" {} \; | read && exit 1 %build export GOPATH="${PWD}/gopath" mkdir -p gopath/src/github.com cd gopath/src/github.com mkdir -p docker mkdir -p opencontainers ln -snrf ../../../runc-%{RUNC_COMMIT} opencontainers/runc ln -snrf ../../../containerd-%{CONTAINERD_COMMIT} docker/containerd ln -snrf ../../../libnetwork-%{LIBNETWORK_COMMIT} docker/libnetwork ln -snrf ../../../moby-%{version} docker/docker pushd docker/docker DOCKER_GITCOMMIT=%{DOCKER_COMMIT} DOCKER_BUILDTAGS='exclude_graphdriver_aufs seccomp' ./hack/make.sh dynbinary popd pushd docker/containerd make popd pushd opencontainers/runc make BUILDTAGS='seccomp' popd pushd docker/libnetwork go build -ldflags="-linkmode=external" -o docker-proxy github.com/docker/libnetwork/cmd/proxy popd %install install -vdm755 %{buildroot}%{_bindir} install -vdm755 %{buildroot}%{_unitdir} install -vdm755 %{buildroot}%{_datadir}/bash-completion/completions pushd gopath/src/github.com/docker install -m755 docker/bundles/latest/dynbinary-client/%{name}-%{version} %{buildroot}%{_bindir}/%{name} install -m755 docker/bundles/latest/dynbinary-daemon/%{name}d-%{version} %{buildroot}%{_bindir}/%{name}d install -m755 containerd/bin/containerd %{buildroot}%{_bindir}/%{name}-containerd install -m755 containerd/bin/containerd-shim %{buildroot}%{_bindir}/%{name}-containerd-shim install -m755 containerd/bin/ctr %{buildroot}%{_bindir}/%{name}-containerd-ctr install -m755 libnetwork/docker-proxy %{buildroot}%{_bindir}/%{name}-proxy popd pushd gopath/src/github.com/opencontainers install -m755 runc/runc %{buildroot}%{_bindir}/%{name}-runc popd install -m644 %{SOURCE4} %{buildroot}%{_unitdir}/docker.service install -m644 %{SOURCE5} %{buildroot}%{_unitdir}/docker-containerd.service install -m644 %{SOURCE6} %{buildroot}%{_datadir}/bash-completion/completions/docker #%{_fixperms} %{buildroot}/* %preun %systemd_preun docker.service %systemd_preun docker-containerd.service %post /sbin/ldconfig if [ $1 -eq 1 ] ; then getent group docker >/dev/null || groupadd -r docker fi %postun /sbin/ldconfig %systemd_postun_with_restart docker-containerd.service %systemd_postun_with_restart docker.service if [ $1 -eq 0 ] ; then if getent group docker >/dev/null; then groupdel docker fi fi %clean rm -rf %{buildroot}/* %files %defattr(-,root,root) %{_unitdir}/docker-containerd.service %{_unitdir}/docker.service %{_bindir}/docker %{_bindir}/docker-containerd %{_bindir}/docker-containerd-ctr %{_bindir}/docker-containerd-shim %{_bindir}/docker-proxy %{_bindir}/docker-runc %{_bindir}/dockerd %{_datadir}/bash-completion/completions/docker %changelog * Mon Jul 10 2017 Bo Gan 1.13.1-4 - Fix runc/containerd/libnetwork versions - Do not strip binaries * Thu May 04 2017 Kumar Kaushik 1.13.1-3 - Docker build requires GO. * Wed May 03 2017 Kumar Kaushik 1.13.1-2 - Fixing docker plugin runc version github issue # 640. - Adding docker group for non-sudo users, GitHub issue # 207. * Tue Apr 11 2017 Kumar Kaushik 1.13.1-1 - Building docker from source. * Fri Jan 13 2017 Xiaolin Li 1.12.6-1 - Upgraded to version 1.12.6 * Wed Sep 21 2016 Xiaolin Li 1.12.1-1 - Upgraded to version 1.12.1 * Mon Aug 22 2016 Alexey Makhalov 1.12.0-2 - Added bash completion file * Tue Aug 09 2016 Anish Swaminathan 1.12.0-1 - Upgraded to version 1.12.0 * Tue Jun 28 2016 Anish Swaminathan 1.11.2-1 - Upgraded to version 1.11.2 * Thu May 26 2016 Divya Thaluru 1.11.0-6 - Fixed logic to restart the active services after upgrade * Tue May 24 2016 Priyesh Padmavilasom 1.11.0-5 - GA - Bump release of all rpms * Tue May 10 2016 Anish Swaminathan 1.11.0-4 - Remove commented post actions * Tue May 3 2016 Divya Thaluru 1.11.0-3 - Fixing spec file to handle rpm upgrade scenario correctly * Sat Apr 30 2016 Priyesh Padmavilasom 1.11.0-2 - Add $DOCKER_OPTS to start in docker.service * Fri Apr 15 2016 Anish Swaminathan 1.11.0-1 - Updated to version 1.11.0. * Tue Feb 23 2016 Harish Udaiya Kumar 1.10.2-1 - Upgraded to version 1.10.2 * Thu Dec 10 2015 Xiaolin Li 1.9.0-2 - Add systemd to Requires and BuildRequires. - Use systemctl to enable/disable service. * Fri Nov 06 2015 Vinay Kulkarni 1.9.0-1 - Update to version 1.9.0 * Mon Aug 17 2015 Divya Thaluru 1.8.1-1 - Update to new version 1.8.1. * Fri Jun 19 2015 Fabio Rapposelli 1.7.0-1 - Update to new version. * Mon May 18 2015 Touseef Liaqat 1.6.0-3 - Update according to UsrMove. * Fri May 15 2015 Divya Thaluru 1.6.0-2 - Updated to version 1.6 * Wed Mar 4 2015 Divya Thaluru 1.5.0-1 - Initial build. First version