Docker从源代码构build – 如何运行?

我想让Docker 1.13.1在ARMv8上使用,而且在Docker(该组织)还没有提供AArch64构build的情况下,我决定自己构build它。

我跟着一个很好的教程: http : //oyvindsk.com/writing/docker-build-from-source

结果是我从github上取得了源代码:

git clone https://github.com/docker/docker.git 

我切换到回购,并从v1.13.1标签创build一个新的分支

 cd docker git checkout -b gta1.13.1 v1.13.1 

我执行了两个拨打电话:

 make build make binary 

并省去一些细节,把所得的二进制文件推到我自己的github仓库: https : //github.com/scyentyfyc/docker

然后我把这个repo放到一个没有安装docker的ARMv8服务器上,然后我把每个不以.md5或.sha256结尾的文件复制到/ usr / bin中,导致所有这些在我的/ USR / bin中

 /usr/bin/docker /usr/bin/docker-1.13.1 /usr/bin/docker-containerd /usr/bin/docker-containerd-ctr /usr/bin/docker-containerd-shim /usr/bin/dockerd /usr/bin/dockerd-1.13.1 /usr/bin/docker-init /usr/bin/docker-proxy /usr/bin/docker-runc 

如果我手动运行dockerd,它似乎运行良好,但我不能使用我看到其他地方build议的东西

 service docker start 

因为我得到的消息,“无法启动docker.service:单位docker.service找不到”。 而当我尝试使用systemd

 systemctl enable docker 

我得到的消息,“无法执行操作:没有这样的文件或目录”。

所以,我只是想知道我错过了什么。 我不想手动运行docker守护进程,我希望它在系统启动时自动运行,但是在大量的漫游之后,我已经空了手

马克是对的。 您将需要创build服务文件,以便systemd知道如何与泊坞窗服务进行交互。 你需要将这个github仓库中的.service和.socket文件复制到/ etc / systemd / system中