docker compose 只有x86 版本的,没有arm版本的。 arm版本的需要自己编译,你需要有一个配置稍微高一点的,能使用docker 的arm的开发板。
编译过程如下:
下载代码:
<code>git clone https://github.com/docker/compose.git/<code>
准备编译用的dockerfile
<code>cd compose
cp -i Dockerfile Dockerfile.armhf
sed -i -e 's/^FROM debian\\:/FROM armhf\\/debian:/' Dockerfile.armhf/<code>
主要是两个docker image, 一个是build用的(debian),一个是runtime用的(alpine), 后面用到的主要是build用的, 新版本的docker-compose的编译不需要修改上面的内容。
你可以通过在的build用的debian的配置里面添加下面的命令切换deian的apt源
<code>RUN sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list/<code>
在alpine的配置里面添加下面的命令切换alpine的源
<code>RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories/<code>
修改编译脚本script/build/linux
-f Dockerfile 修改成-f Dockerfile.armhf, 新版本的docker-compose的编译不需要修改。
编译
<code>./script/build/linux/<code>
编译成功后,编译好的docker-compose 会被放到dist 目录下面
<code>$ ls -l dist/
total 14456
-rwxr-xr-x 1 ubuntu ubuntu 14799448 3月 15 20:51 docker-compose-Linux-aarch64/<code>
閱讀更多 cheatsheet 的文章