Linux使用curl 方式安裝docker-compose 後執行docker-compose version 檢查安裝是否成功時出錯的解決辦法
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
錯誤:
[[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 檢查安裝是否成功時出錯的解決辦法