如何从x86_64和arm arch的源代码构建docker-compose容器? (提交前,请提供带有`from`的源图像)

问题描述 投票:0回答:1

我正在尝试从源代码构建docker-compose容器。最终,我想要两个这样的容器,一个用于x86_64,另一个用于臂拱。我看到可以使用此脚本https://github.com/docker/compose/releases/download/1.25.5/run.sh获得与x86兼容的容器,但我需要能够从源代码进行构建。我已经克隆了compose存储库,并尝试了两件事,首先只是尝试在存储库中使用Dockerfile进行构建。结果:

>docker build -t docker-compose .
Sending build context to Docker daemon 1.872 MB
Step 1/39 : ARG DOCKER_VERSION=19.03.8
Please provide a source image with `from` prior to commit

然后我在script / build中查看构建脚本,并尝试执行linux构建脚本。

> script/build/linux
+ ./script/clean
++ script/build/write-git-sha
+ DOCKER_COMPOSE_GITSHA=9c5351cf
+ TAG=docker/compose:tmp-glibc-linux-binary-9c5351cf
+ docker build -t docker/compose:tmp-glibc-linux-binary-9c5351cf . --build-arg BUILD_PLATFORM=debian --build-arg GIT_COMMIT=9c5351cf
Sending build context to Docker daemon 1.872 MB
Step 1/39 : ARG DOCKER_VERSION=19.03.8
Please provide a source image with `from` prior to commit

我被困在这里。我对arm容器的计划是使用linux构建脚本,但是将ARCH交换到我的arm体系结构。任何帮助,将不胜感激

docker docker-compose arm x86-64 docker-build
1个回答
0
投票

如果有人遇到此问题,我会回答这个问题,因为我已经解决了。问题出在我的docker-version上。您需要一个最新的Docker版本,然后克隆docker-compose repo并像上面显示的那样进行docker build。要构建ARM版本,我必须使用Qemu制作ARM仿真器,并在那里执行相同的步骤。

© www.soinside.com 2019 - 2024. All rights reserved.