docker-compose安装(包括arm架构)

一、安装docker


一键安装docker

curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh

接下来安装docker-compose,三种方式进行安装
1、二进制安装

sudo curl -L "https://github.com/docker/compose/releases/download/1.28.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 添加快捷启动连接
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# 测试安装结果
docker-compose --version

若是github访问太慢,可以用daocloud下载

sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
# 添加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 测试安装结果
docker-compose --version

2、pip3安装

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

3、yum安装

yum install  docker-compose

但是发现存在2种错误如下:

-bash: /usr/local/bin/docker-compose: cannot execute binary file

采用docker pull 进行启动错误如下:

standard_init_linux.go:219: exec user process caused: exec format error

那么只有采取终极安装方式。
安装docker-compose

cd /usr/local/src

git clone https://github.com/ubiquiti/docker-compose-aarch64.git

安装
进入docker-compose源文件目录。
cd /usr/local/src/docker-compose-aarch64

配置Dockerfile。
vi Dockerfile

注释掉RUN [ "cross-build-start" ],即在之前加入‘#’后保存退出。

# Dockerfile to build docker-compose for aarch64
FROM arm64v8/python:3.6.5-stretch

# Add env
ENV LANG C.UTF-8

# Enable cross-build for aarch64
COPY ./vendor/qemu-bin /usr/bin/
#RUN [ "cross-build-start" ]

安装docker-compose。
cd /usr/local/src/docker-compose-aarch64

docker build . -t docker-compose-aarch64-builder

运行和验证
运行docker-compose容器。
docker run docker-compose-aarch64-builder

找到生成的“docker-compose”可执行程序。
find / -name "docker-compose-Linux-aarch64"

[root@ecs-teukh-1 docker-compose-aarch64]# find / -name "docker-compose-Linux-aarch64"
/var/lib/docker/overlay2/1d8081e2d4b5958a1eccbaf76e949219c260d89236315b48cf0bfa95e076c1da/diff/build/dockercompose/docker-compose-Linux-aarch64
/var/lib/docker/overlay2/1d8081e2d4b5958a1eccbaf76e949219c260d89236315b48cf0bfa95e076c1da/diff/build/docker-compose-Linux-aarch64
/var/lib/docker/volumes/9d6624e6fc53d37221774fed9c64cf1a4ce64319a221e1069c70b4c88df7be40/_data/docker-compose-Linux-aarch64

可以看到有三个目录存放了生成的“docker-compose-Linux-aarch64”可执行程序。

进入任意一个目录。
cd /var/lib/docker/overlay2/1d8081e2d4b5958a1eccbaf76e949219c260d89236315b48cf0bfa95e076c1da/diff/build/dockercompose/

./docker-compose-Linux-aarch64 --version

[root@ecs-teukh-1 build]# ./docker-compose-Linux-aarch64 --version
docker-compose version 1.22.0, build e20d808e

创建快捷键
ln -s /var/lib/docker/volumes/9d6624e6fc53d37221774fed9c64cf1a4ce64319a221e1069c70b4c88df7be40/_data/docker-compose-Linux-aarch64  /usr/bin/docker-compose-Linux-aarch64
posted @ 2022-03-16 13:51  离人怎挽_wdj  阅读(2928)  评论(0编辑  收藏  举报