默认情况下,Docker 由 CentOS-extras 存储库提供。以下是一些您可能需要考虑熟悉的命令:
# To search everything 'docker' related
yum search docker
# Once found interesting package...
yum info docker
在普通实例上(即没有导入任何无关/第三方存储库),输出应类似于以下内容
Available Packages
Name : docker
Arch : x86_64
Epoch : 2
Version : 1.13.1
Release : 96.gitb2f74b2.el7.centos
Size : 18 M
Repo : extras/7/x86_64
Summary : Automates deployment of containerized applications
URL : https://github.com/docker/docker
License : ASL 2.0
Description : Docker is an open-source engine that automates the deployment of any
: application as a lightweight, portable, self-sufficient container that will
: run virtually anywhere.
:
: Docker containers can encapsulate any payload, and will run consistently on
: and between virtually any server. The same container that a developer builds
: and tests on a laptop will run at scale, in production*, on VMs, bare-metal
: servers, OpenStack clusters, public instances, or combinations of the above.
然后,为了(大多数时候)获取特定 rpm 的源包,请尝试以下命令(假设您之前安装了 yum-utils
# Disable all repos, enable the one we have eyes on, set 'source only' and download
yumdownloader --disablerepo=\* --enablerepo=extras --source docker
这是命令的输出
Initializing download: http://vault.centos.org/centos/7/extras/Source/SPackages/docker-1.13.1-96.gitb2f74b2.el7.centos.src.rpm
File size: 14604391 bytes
Opening output file ./docker-1.13.1-96.gitb2f74b2.el7.centos.src.rpm
Starting download
Connection 2 finished ] 41% [============================- ] 0.0 B/s | 5.8 MB --:--:-- ETA
Connection 4 finished ]
Connection 0 finished ]
Connection 1 finished ]
[100%] [..................................................] [ 14.6MB/s] [00:00]100% [======================================================================] 8.1 MB/s | 14 MB 00:00:00 ETA
Downloaded 13.9 megabytes in 0 seconds. (14921.07 KB/s)
docker-1.13.1-96.gitb2f74b2.el7.centos.src.rpm | 14 MB 00:00:01
下载文件后,您可以解压或使用 rpm 安装以访问内容。 Midnight Commander 还可以列出/查看/复制/提取大多数 rpm 档案到您选择的目录。
rpm -Uvh docker-1.13.1-96.gitb2f74b2.el7.centos.src.rpm
Updating / installing...
1:docker-2:1.13.1-96.gitb2f74b2.el7################################# [100%]
这些文件应该已经安装在 $HOME/rpmbuild
SPECS 文件夹将包含规范文件,SOURCES 将包含已编译的源代码,以便创建所述包。
在本例中,源代码文件位于 $HOME/rpmbuild/SOURCES/b2f74b220126bddbae585cfe2406498ced3ae065.tar.gz
用于创建 rpm 包的规范文件也很有趣。在该文件中,您将了解包维护者或发行版“专有”的编译前/编译后的特殊内容/修改。