docker-composeのインストールとバージョン差異エラー回避方法

docker-composeはDockerコンテナの構成管理ツール。
昔はfigという名前のツールだったが、Dockerと統合して名前を変更したとのこと。

データボリューム, DB, バックエンド、フロントエンドなど、 サービスの稼働に複数コンテナが必要な場合のビルドや立ち上げが非常に楽になる。

インストール自体はシンプルだが、 Dockerのバージョンによっては実行時にエラーが出てしまうようなので、 エラー回避方法もまとめておく。

Overview of Docker Compose
https://docs.docker.com/compose/

インストール手順

公式ドキュメントに対応OSごとのインストール方法がまとめてあった。

Docker Compose: Supported installation
https://docs.docker.com/installation/

OS共通の方法で一番簡単なのが、pipでインストールする方法。

pip install -U docker-compose

pipがない場合は、easy_installでインストールできる。

easy_install pip

バージョン差異エラー回避方法

docker-compose upなどの実行時に、以下の様なエラーが表示されることがある。

client and server don't have same version (client : 1.19, server: 1.18)

原因

このエラーは、インストールされているDockerサーバーのバージョンと、 docker-composeクライアント(API)のバージョンに互換性がない時に表示されるらしい。

回避方法

COMPOSE_API_VERSION環境変数にサーバーのバージョンを設定すれば、 docker-composeの方で、サーバーのバージョンに合わせて通信してくれるとのこと。 autoを設定すれば、自動で調整してくれるみたい。便利。

以下のコマンドを入力するか、/etc/profileとか~/.bash_profileあたりに追記しておく。

export COMPOSE_API_VERSION=auto

/etc/environmentに追記する場合は以下のようにする。

COMPOSE_API_VERSION=auto

docker-composeの利用例

当ブログの以下の記事で、具体的な使用例を紹介しているので、参照されたい。

comments powered by Disqus

この記事について

書いた人
Written by

namikingsoft

何かを残して逝きたい
フロントエンドエンジニア