summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--docker-ce.spec120
-rw-r--r--sources1
3 files changed, 122 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..0e05387 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/engine.tgz
diff --git a/docker-ce.spec b/docker-ce.spec
new file mode 100644
index 0000000..26f9509
--- /dev/null
+++ b/docker-ce.spec
@@ -0,0 +1,120 @@
+%global debug_package %{nil}
+
+Name: docker-ce
+Version: 27.2.0
+Release: 1
+Epoch: 3
+Source0: engine.tgz
+Summary: The open-source application container engine
+Group: Tools/Docker
+License: ASL 2.0
+URL: https://www.docker.com
+Vendor: Docker
+Packager: Docker <support@docker.com>
+
+Requires: /usr/sbin/groupadd
+Requires: docker-ce-cli
+Recommends: docker-ce-rootless-extras
+Requires: container-selinux >= 2:2.74
+Requires: libseccomp >= 2.3
+Requires: systemd
+Requires: iptables
+%if %{undefined rhel} || 0%{?rhel} < 9
+# Libcgroup is no longer available in RHEL/CentOS >= 9 distros.
+Requires: libcgroup
+%endif
+Requires: containerd.io >= 1.6.24
+Requires: tar
+Requires: xz
+
+BuildRequires: bash
+BuildRequires: ca-certificates
+BuildRequires: cmake
+BuildRequires: gcc
+BuildRequires: git
+BuildRequires: glibc-static
+BuildRequires: libarchive
+BuildRequires: libseccomp-devel
+BuildRequires: libselinux-devel
+BuildRequires: libtool
+BuildRequires: libtool-ltdl-devel
+BuildRequires: make
+BuildRequires: pkgconfig
+BuildRequires: pkgconfig(systemd)
+BuildRequires: selinux-policy-devel
+BuildRequires: systemd-devel
+BuildRequires: tar
+BuildRequires: which
+
+# conflicting packages
+Conflicts: docker
+Conflicts: docker-io
+Conflicts: docker-ee
+
+# Obsolete packages
+Obsoletes: docker-ce-selinux
+Obsoletes: docker-engine-selinux
+Obsoletes: docker-engine
+
+%description
+Docker is a product for you to build, ship and run any application as a
+lightweight container.
+
+Docker containers are both hardware-agnostic and platform-agnostic. This means
+they can run anywhere, from your laptop to the largest cloud compute instance
+and everything in between - and they don't require you to use a particular
+language, framework or packaging system. That makes them great building blocks
+for deploying and scaling web apps, databases, and backend services without
+depending on a particular stack or provider.
+
+%prep
+%setup -q -c -n src -a 0
+
+%build
+
+export DOCKER_GITCOMMIT=%{_gitcommit_engine}
+mkdir -p /go/src/github.com/docker
+ln -snf ${RPM_BUILD_DIR}/src/engine /go/src/github.com/docker/docker
+
+pushd ${RPM_BUILD_DIR}/src/engine
+TMP_GOPATH="/go" hack/dockerfile/install/install.sh tini
+VERSION=%{_origversion} PRODUCT=docker hack/make.sh dynbinary
+popd
+
+%check
+ver="$(engine/bundles/dynbinary-daemon/dockerd --version)"; \
+ test "$ver" = "Docker version %{_origversion}, build %{_gitcommit_engine}" && echo "PASS: daemon version OK" || (echo "FAIL: daemon version ($ver) did not match" && exit 1)
+
+%install
+install -D -p -m 0755 $(readlink -f engine/bundles/dynbinary-daemon/dockerd) ${RPM_BUILD_ROOT}%{_bindir}/dockerd
+install -D -p -m 0755 $(readlink -f engine/bundles/dynbinary-daemon/docker-proxy) ${RPM_BUILD_ROOT}%{_bindir}/docker-proxy
+install -D -p -m 0755 /usr/local/bin/docker-init ${RPM_BUILD_ROOT}%{_libexecdir}/docker/docker-init
+
+# install systemd scripts
+install -D -m 0644 engine/contrib/init/systemd/docker.service ${RPM_BUILD_ROOT}%{_unitdir}/docker.service
+install -D -m 0644 engine/contrib/init/systemd/docker.socket ${RPM_BUILD_ROOT}%{_unitdir}/docker.socket
+
+# create the config directory
+mkdir -p ${RPM_BUILD_ROOT}/etc/docker
+
+%files
+%{_bindir}/dockerd
+%{_bindir}/docker-proxy
+%{_libexecdir}/docker/docker-init
+%{_unitdir}/docker.service
+%{_unitdir}/docker.socket
+%dir /etc/docker
+
+%post
+%systemd_post docker.service
+if ! getent group docker > /dev/null; then
+ groupadd --system docker
+fi
+
+%preun
+%systemd_preun docker.service docker.socket
+
+%postun
+%systemd_postun_with_restart docker.service
+
+%changelog
diff --git a/sources b/sources
new file mode 100644
index 0000000..68f4688
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+18518b5a66580389fc9aac1f61787ca9 engine.tgz