1. 程式人生 > >Linux使用curl 方式安裝docker-compose 後執行docker-compose version 檢查安裝是否成功時出錯的解決辦法

Linux使用curl 方式安裝docker-compose 後執行docker-compose version 檢查安裝是否成功時出錯的解決辦法

hub 執行 cannot 1.0 使用 文件 curl url 驗證

0x0.緣起:

今天在一臺新的Fedora 25上按照官方文檔,使用curl方式安裝 docker-compose後,驗證是否安裝成功時出錯:

安裝時使用的命令為;

curl -L https://github.com/docker/compose/releases/download/1.14.0-rc2/docker-compose-`uname -s`-`ur/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

我試著把文件設置為777權限也一樣不能解決問題。

[[email protected] bin]# ll
總計 8076

-rwxrwxrwx. 1 root root 8268354 6月 19 14:58 docker-compose

錯誤:

[[email protected] bin]# ./docker-compose
Cannot open self /usr/local/bin/docker-compose or archive /usr/local/bin/docker-compose.pkg

0x1.解決辦法:

進入下面的網址下載目前的最新版:

https://github.com/docker/compose/releases/tag/1.14.0-rc2

網頁拉到最下面,下載:

docker-compose-Linux-x86_64

然後將文件上傳到 /usr/local/bin/ 文件夾下,然後將其重命名為docker-compose,修改此文件的權限,增加可執行:chmod +x /usr/local/bin/docker-compose

然後再運行

[[email protected] bin]# docker-compose version
docker-compose version 1.14.0-rc2, build 24dae73
docker-py version: 2.3.0
CPython version: 2.7.13
OpenSSL version: OpenSSL 1.0.1t 3 May 2016

可以看到已經沒有問題了。

0x2.原因:

使用官方文檔中所描述的方法:

curl -L https://github.com/docker/compose/releases/download/1.14.0-rc2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

安裝時,curl下載下來的文件是不完整的,而且沒有給出任何錯誤信息。我猜測是https的問題,沒有深究。

可以看到我通過curl下載的文件比使用瀏覽器下載後又上傳到服務器上的文件大小要小:

[[email protected] bin]# ll
總計 16164
-rwxr-xr-x. 1 root root 8278064 6月 19 15:21 docker-compose
-rwxrwxrwx. 1 root root 8268354 6月 19 14:58 docker-compose-curl

Linux使用curl 方式安裝docker-compose 後執行docker-compose version 檢查安裝是否成功時出錯的解決辦法