docker compose 只有x86 版本的,沒有arm版本的。 arm版本的需要自己編譯,你需要有一個配置稍微高一點的,能使用docker 的arm的開發板。
編譯過程如下:
下載代碼:
git clone https://github.com/docker/compose.git
準備編譯用的dockerfile
cd compose
cp -i Dockerfile Dockerfile.armhf
sed -i -e 's/^FROM debian\:/FROM armhf\/debian:/' Dockerfile.armhf
主要是兩個docker image, 一個是build用的(debian),一個是runtime用的(alpine), 後面用到的主要是build用的, 新版本的docker-compose的編譯不需要修改上面的內容。
你可以通過在的build用的debian的配置裏面添加下面的命令切換deian的apt源
RUN sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
在alpine的配置裏面添加下面的命令切換alpine的源
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
修改編譯腳本script/build/linux
-f Dockerfile 修改成-f Dockerfile.armhf, 新版本的docker-compose的編譯不需要修改。
編譯
./script/build/linux
編譯成功後,編譯好的docker-compose 會被放到dist 目錄下面
$ ls -l dist/
total 14456
-rwxr-xr-x 1 ubuntu ubuntu 14799448 3月 15 20:51 docker-compose-Linux-aarch64
原文:
https://www.toutiao.com/i6804465376827539971/