CentOS 编译ARM架构 Docker Compose

CentOS 编译ARM架构 Docker Compose

    • 安装依赖
    • 安装Docker
    • 拉取源码
    • 切换Tag
    • 修改源
    • 编译
    • 应用
    • 版本查看
    • 扩展内容

官方没有提供aarch64架构的1.29.2版本,需要自行编译aarch64架构的Docker Compose。
官方2.x系列已经提供 aarch64架构版本。

安装依赖

yum -y install yum-utils  git 

安装Docker

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

或者

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum -y install docker-ce

拉取源码

git clone https://github.com/docker/compose.git

切换Tag

cd compose
git checkout 1.29.2

修改源

vim  Dockerfile
deian
sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
alpine
sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories

CentOS 编译ARM架构 Docker Compose_第1张图片

编译

./script/build/linux 

提示:漫长的等待结果。

应用

提示:编译成功后会在 ./dist 目录中生成 “docker-compose-Linux-aarch64” 的应用。

cp ./dist/docker-compose-Linux-aarch64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

版本查看

docker-compose version
docker-compose version 1.29.2, build 5becea4
docker-py version: 5.0.0
CPython version: 3.7.10
OpenSSL version: OpenSSL 1.1.0l  10 Sep 2019

扩展内容

执行文件导入本地dist目录时报错,信息往上阅读,发现docker-compose 已经编译好了,只是最后的导出部分报错。
思路:既然导出有问题,那我们自己去容器中提取到本地。
CentOS 编译ARM架构 Docker Compose_第2张图片

1.编辑Dockerfile文件

vim Dockerfile
RUN script/build/linux-entrypoint
改成
RUN script/build/linux-entrypoint && sleep 99999

CentOS 编译ARM架构 Docker Compose_第3张图片

2.重新进行编辑

./script/build/linux 

CentOS 编译ARM架构 Docker Compose_第4张图片

3.复制
当编译结果显示 successfully 字样
CentOS 编译ARM架构 Docker Compose_第5张图片
新启会话窗口

docker ps  #查看当前编译容器ID或名称
docker  cp  trusting_babbage:/usr/local/bin/docker-compose  .

其他安装方式

yum install -y libffi libffi-devel openssl-devel python3 python3-pip python3-devel
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple docker-compose

你可能感兴趣的:(Docker,docker,centos,arm)