Docker 从源代码构建 - 如何运行?

标签 docker

我想在 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/

相关文章:

ubuntu - 运行 Sphinx 搜索服务时出错

networking - 如何在没有网桥的情况下连接 Docker 容器?

linux - 当 Docker 容器的 PID1 退出时,其他进程会发生什么?

docker - docker中的Spring Boot应用程序立即终止

postgresql - 在 Dockerfile 中创建的数据库不会出现在正在运行的容器中

Docker: "You don' 在/var/cache/apt/archives/中有足够的可用空间”

java - 在Windows上将mongoDB安装为docker镜像

docker - (Kubernetes + Minikube) 无法从本地注册表获取 docker 镜像

来自 Windows 容器的 Docker Desktop for Windows : Cannot ping google. com

docker - 在 Docker 终端 Windows 中更改目录