CozeはオンプレミスでDockerのバージョン要件がありますか? 世論から判断すると、答えは基本的に「はい、そして古いバージョンは踏みつけやすい」ということです。 最も典型的な現象は、「make web」を実行すると「unknown shorthand flag(f」が-f)に入っていると直接報告することです。これは通常、Cozeプログラム自体が壊れているわけではなく、DockerやComposeのバージョンが古すぎてリポジトリで現在使われているコマンドフォームを認識できないためです。
公式リポジトリでは、「Makefile」の「web」ターゲットが直接「docker compose -f docker/docker-compose.yml --env-file...」を使用しています。 「up -d'」と書かれています。 とはいえ、この起動プロセスはデフォルトの「docker compose」コマンドに依存しており、従来の「docker-compose」v1の習慣とは異なります。
なぜ古いバージョンは簡単に覆されるのか
18.x時代のDockerのゲームプレイは、すでに現在のComposeとは大きく異なります。 古いバイナリや古いプラグインを使っているかもしれませんが、リポジトリのスタートアップスクリプトは新しいコマンドですでに整理されています。 したがって、「-f」「--profile」「up -d」といったパラメータは、古い環境で「Cozeは互換性がない」と思われる誤りを直接報告しますが、実際にはスタートアップツール間の不一致です。
比較的安定した判断方法
- まずは「docker compose version」を実行して、環境が新しいコマンドを認識しているか確認してください。
- もし「docker-compose version」しか使えないなら、通常は環境が古すぎることを意味します。
- 「make web」というコマンドパラメータが誤っていると報告された場合は、まずDocker EngineとComposeプラグインをアップグレードしてください。
公式READMEでは、このプロジェクトはDocker Composeによって開始されたローカルデプロイメントソリューションとして既に位置づけられているため、最も手間のかからないアイデアは「リポジトリスクリプトをバイパスする」のではなく、ホスト環境をこのコマンドセットを直接実行できる状態にアップグレードすることです。 こうすることで、その後のトラブルシューティングが大幅に減ります。
一文の結論
Cozeのオンプレミス展開は単なるDockerではなく、少なくとも通常通り「docker compose」を使える必要があります。 もしまだ18.x + compose v1を使っているなら、まず環境をアップグレードしてからCozeについて話しましょう。