Docker Composeのバージョンが古くてversion: ‘3’の記述が使えない

Docker

Docker Composeのバージョンが古い

Docker Composeを使用していてよくあるのが、Docker Composeのバージョンが古いためversion: ‘3’の記述が使えない時があります。

それはしばしば、yumやaptなどのパッケージ管理コマンドでDocker Composeをインストールした時に発生します。

パッケージ管理コマンドは大変便利ですがバージョンが古くてエラーなんてことがよく起きます!

今回はその対処方法について確認しています。

 

ちなみに、パッケージ管理コマンドでDocker Composeをインストールするとは以下のような方法で行います。

docker-compose.ymlのバージョンを気にしなければ、パッケージ管理コマンドを使用したインストール簡単でいいですね!

apt-getでdocker-composeをインストールする方法

 

今回発生したエラー

以下のようなエラーが発生しました。

エラーの内容としては、docker-compose.ymlのバージョンが誤っています。バージョン2を指定してください。

とのことですが、僕は今回バージョン3を使用したいため、docker-composeコマンドのバージョンを上げることにします。

 

$ docker-compose exec web /usr/local/bin/composer install --working-dir=/var/www/html/laravel

ERROR: Version in "./docker-compose.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a version of "2" (or "2.0") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/

 

エラー発生のDocker Composeのバージョン

ちなみに、エラー発生時のaptでインストールしたDocker Composeのバージョンはこちらでした。

$ docker-compose -v
docker-compose version 1.8.0, build unknown

 

最新のDocker Composeをインストールする

エラーを解消するために、最新のDocker Composeをインストールすれば、今回のエラーは解決ですね。

以下の手順でバイナリからインストールをすればOKです。

バイナリからdocker-composeをインストールする方法

 

バイナリからインストール後のDocker Composeのバージョン

今回バイナリからインストールしたDocker Composeのバージョンはこちらでした。

これでエラーはでなくなったので、今回は任務完了です!

$ docker-compose --version
docker-compose version 1.22.0, build f46880fe

 

Dockerを最速でマスターする!

書籍でマスターする

プログラマのためのDocker教科書

こちらの書籍は、まさにプログラマのためのDocker教科書と言って間違いありません!

プログラマーがDockerを学び始めるのに最適な一冊となっています。

内容的には、インフラが得意でないプログラマ向きではありますが、単純にDockerを触れたことがないプログラマの一冊目のDocker本としてオススメな内容となっています!

現在は最新版として第2版が発売されていますので、購入の際は最新の第2版を購入することをオススメします!

こちらから最新のDocker教科書が購入できますので、是非読んでDockerを基礎からマスターしちゃってください!


プログラマのためのDocker教科書 第2版 インフラの基礎知識&コードによる環境構築の自動化

 

一個前の第1版を購入したい!という方はこちらにリンクを貼っておきましたので是非活用してください!


プログラマのためのDocker教科書 インフラの基礎知識&コードによる環境構築の自動化

 

Docker/Kubernetes 実践コンテナ開発入門

この書籍は、Dockerをある程度理解している、またはDockerの本番運用を見据えてKubernetesを学習したい方にオススメの書籍です!

レベル的にはDockerの基本をある程度理解している方向けですので、今流行りのKubernetesという単語につられて購入しないように、初心者の方はご注意ください!

初心者の方は、上記のプログラマのためのDocker教科書から是非チャレンジしてくださいね!

 

中級者以上の方は、こちらの書籍を是非読んで見てください!

Dockerを開発環境だけで使っていた方あまりDockerを使いこなせていなかった方にとってもオススメです!

何がオススメかというと、まずこの書籍の前半にはDocker自体の説明も豊富で、実際に動かせるDockerのサンプルコードが多数あるのです!

しかもそのサンプルコードのクォリティーが高く、実際のDocker運用にそのまま使えるぐらいしっかり作られていると思います。

Kubernetesについてはとても難しい技術であるのは確かですが、説明も詳しく丁寧なのでこの本からKubernetesを入門するにはピッタリです。


Docker/Kubernetes 実践コンテナ開発入門

 

Udemyの講座でマスターする

ゼロからはじめる Dockerによるアプリケーション実行環境構築

基礎から最速でDockerをマスターしたいという方には、やっぱりUdemyがオススメです!

忙しくてなかなか勉強時間が取れない方など、隙間時間に動画をみて、空いた時間で実際に手を動かしてやってみるなど工夫すると最速でDockerが理解できるのでオススメなのです!

僕もこちらの動画を受講して、今ではプロジェクトで使用するDocker環境の構築を担当しています。

動画自体は、ベストセラーの評価受けていることからもわかる通り、とても品質が高く、初心者からDockerを初めたい経験者の方まで満足できるかと思います。

プログラミング初級者は、じっくり動画進めてDockerをマスターしちゃってください!

プログラミング中級者以上は、動画見ているだけでも理解できると思うので、Dockerの全体像がすぐ理解できると思います。

動画なので、2倍速などで視聴すれば本当に最速でDockerをマスターできちゃうのでオススメです!

まずDocker教材の一個目として書籍が良い方は、上記で紹介したプログラマのためのDocker教科書、動画で最速で理解したい方は、Udemyのゼロからはじめる Dockerによるアプリケーション実行環境構築で始めれば間違いないと思います!

※こちらの画像をクリックするとUdemyの講座のページへ飛ぶことができます!

コメント