いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Docker Desktopを最新版にしたら docker-compose でエラーでるようになった (v4.2.0, unexpected character...)

概要

f:id:gsf_zero1:20211029114204p:plain

忘れないうちにここにメモメモ。。。

Docker Desktop for Windows を最新版にアップデートしたところ、バージョンが v4.2.0 になりました。

f:id:gsf_zero1:20211116153222p:plain

んで、アップデート後にいつもどおり docker-compose してコンテナ起動しようとしたら

$ docker-compose up -d db
unexpected character "-" in variable name near ......

あれ、、エラー出る、、、。何も変えていないけど、、。

原因

原因は、最新版にアップデートすると Docker Compose V2 が自動的に有効になっている模様。

f:id:gsf_zero1:20211116153433p:plain

このチェックを外します。

f:id:gsf_zero1:20211116153519p:plain

そうすると、前の状態に戻るのでエラーにならずに動作するようになりました。

いきなり、有効にするのヤメテ・・・。

unexpected character "-"... ってエラーが出ていた原因

ちなみに、私の場合は .env ファイルに以下のような定義をしていたせいでした。

POSTGRES_INITDB_ARGS=--data-checksums --encoding=UTF-8

値をクオートしていなかったので、エラーが出ていました。docker-compose v1 の場合はこれでもちゃんと動いていたのですが、v2では駄目みたい。

POSTGRES_INITDB_ARGS="--data-checksums --encoding=UTF-8"

こうすると、Docker Compose V2 にしてもちゃんと動きました。

参考情報

docs.docker.com

qiita.com

stackoverflow.com


過去の記事については、以下のページからご参照下さい。

  • いろいろ備忘録日記まとめ

devlights.github.io

サンプルコードは、以下の場所で公開しています。

  • いろいろ備忘録日記サンプルソース置き場

github.com

github.com

github.com