docker-composeのインストールで嵌る

表題の通り。AmazonLinuxにdocker-composeをインストールしようとしてハマった。

■ 環境

  • AmazonLinux
  • docker-compose 1.4.0

■ きっかけ

AmazonLinuxにdocker/docker-machine/docker-composeをインストールした。docker-machine/docker-composeに関しては下記のURLの通りの方法でインストールした。

インストール後、いざ使用してみようと思い実行してみたところ、docker-composeの実行結果がおかしい。

$ docker-compose --version
{"error":"Not Found"}$

■ 原因

ファイルを確認していたところ、そもそも`curl`でのダウンロードが正常にできていない。`/usr/local/bin/docker-compose`に前述のJSONのようなものが書かれたテキストファイルになっていた。

再度docker-composeのインストール手順のページを見ていて気がついたのは下記。

curl -L https://github.com/docker/compose/releases/download/VERSION_NUM/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

VERSION_NUM”という文字列がそのままになっている。これはドキュメントのバグであろうか。

https://github.com/docker/compose/releases

上記URLを参照し、最新が”1.4.0“であることを確認。前述の`curl`を下記のように書き換えて再度実行。

curl -L https://github.com/docker/compose/releases/download/1.4.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

ファイルサイズ的にも正しいものが取得できた。

$ ls -l /usr/local/bin/docker-compose
-rwxr-xr-x 1 root root 8186606  9月  1 10:17 /usr/local/bin/docker-compose
$
$ file /usr/local/bin/docker-compose
/usr/local/bin/docker-compose: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=13632aadc5bd1335c37d327e788ed08fb0c927bc, not stripped
$
$ docker-compose --version
docker-compose version: 1.4.0
$

まぁすぐに直されるであろう。

以上。

■ 関連