我正在尝试从源代码构建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-version上。您需要一个最新的Docker版本,然后克隆docker-compose repo并像上面显示的那样进行docker build。要构建ARM版本,我必须使用Qemu制作ARM仿真器,并在那里执行相同的步骤。