我想在 ARMv8 上使用 Docker 1.13.1,但由于 Docker(组织)尚未提供 AArch64 构建,我求助于自己构建它。
我遵循了一个很好的教程:http://oyvindsk.com/writing/docker-build-from-source
结果是我从github上拉取了源码:
git clone https://github.com/docker/docker.git
我切换到 repo 并从 v1.13.1 标签创建了一个新分支
cd docker
git checkout -b gta1.13.1 v1.13.1
我执行了两个 make 调用:
make build
make binary
为您省去一些细节,将生成的二进制文件推送到我自己的 github 存储库:https://github.com/scyentyfyc/docker
然后我将该存储库下拉到尚未安装 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,它似乎运行正常,但我不能使用我在其他地方看到的建议
service docker start
当我收到消息时,“无法启动 docker.service:未找到单元 docker.service。”当我尝试使用 systemd 时
systemctl enable docker
我收到消息,“执行操作失败:没有这样的文件或目录”。
所以,我只是想知道我错过了什么。我不想手动运行 docker 守护进程,我希望它设置为在系统启动时自动运行,但是在网上闲逛了很久之后,我空手而归
最佳答案
马克是对的。您将需要创建服务文件,以便 systemd 知道如何与 docker 服务交互。您需要在 this github repo 中复制 .service
和 .socket 文件
到 /etc/systemd/system
关于Docker 从源代码构建 - 如何运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43927623/