エラーメッセージ
新規プロジェクトを作成しようとしたところ
以下のエラーメッセージが出た。
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 supported version (e.g "2.2" or "3.3") 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/
手順
1.現在のバージョンを確認する。
2.現在バージョンを削除する。
3.バイナリファイルをダウンロードする。
4.ダウンロードしたバイナリに実行権限を与える。
5.バージョンの確認をする。
現在のバージョンを確認する
現在のバージョンを確認します。
私の場合既存のプロジェクトもあったので最悪の場合戻すことも考慮していました。
$docker-compose -v
docker-compose version 1.25.5, build unknown
現在のバージョンを削除する
現在のバージョンがインストールされている場所を確認します。
$ which docker-compose
通常Macであれば以下の場所にインストールされているようです。
自分の場合は以下のようにシンボリックリンクが貼られていました。
$ ls -l /usr/local/bin/docker-compose
/usr/local/bin/docker-compose -> /Applications/Docker.app/Contents/Resources/bin/docker-compose
場所が確認できたら以下のコマンドで削除します。
$ sudo rm -rf /usr/local/bin/docker-compose
※余談|docker composeが複数入っていた場合
自分の場合ですが色々インストールしていたため複数のdocker composeが入っていました。
$which docker-compose
/Users/xxxxxx/Library/Python/3.8/bin/docker-compose
こういった場合次のように確認をします。
echo $SHELL
$ cat ~/.bash_profile
$ cat ~/.bashrc
そして自分の場合は以下の行をコメントアウトすることで
読み込み先を変えることができました。
#export PATH=/Users/xxxxxx/Library/Python/3.8/bin:$PATH
色々勉強用にも使っているPCだとありがちな状況だと思いますが
適宜自分の状況を確認しないと意外とハマりポイントになると思います。
バイナリファイルをダウンロードする
新しいバージョンのdocker composeバイナリファイルをダウンロードします。
新しいバージョンを以下のアドレスで確認します。
https://github.com/docker/compose/releases/
バージョンを確認できたら以下のURLのバージョンのところ(2.2.3)を最新の数字に適宜修正して実行します。
$ sudo curl -L "https://github.com/docker/compose/releases/download/2.2.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
ダウンロードしたファイルに実行権限を与える
以下のコマンドでファイルに実行権限を与えます。
$ sudo chmod +x /usr/local/bin/docker-compose
これをしないとコマンドを叩いてもエラーになります。
バージョンを確認する
最後にバージョンが上がっているかを確認します。
$ docker-compose -v
バージョンが上がっていたら完成です。