編譯arm 版本docker-compose


編譯arm 版本docker-compose

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>


分享到:


相關文章: