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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM