Docker的新手,所以這可能是基本的,但是在我谷歌搜索之后我仍然沒有找到解決方案
我有一個正在嘗試運行的 docker-compose.yml 檔案(檔案的版本是“3.4”,但出現錯誤:
"The compose file is invalid because:
networks.default value Additional properties are not allowed ('name' was unexpected)
這是 docker-compose 檔案中失敗的部分:
networks:
default:
driver: bridge
name: nssams_bridge
當我運行時(我在 Ubuntu 20.04 上)
docker-compose --version
它說版本是 1.25.0,我不確定這是否是支持 3.4 的足夠高的版本,這是我的猜測。
但是我嘗試了多種方式來更新 docker-compose,但似乎都沒有。
我努力了:
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod x /usr/local/bin/docker-compose
和
sudo apt upgrade docker-compose
也
sudo pip install docker-compose
但在所有這些之后, docker-compose --version 命令仍然回傳 1.25.0,構建未知
那么如何升級 docker-compose 版本呢?
uj5u.com熱心網友回復:
該name:選項是在 Compose 檔案格式 3.5 中添加的,因此您的 3.4 版本太舊了。我會使用 3.8 或 3.9,除非您有特定的理由使用舊版本:
version: '3.8' # networks: { name: } requires a minimum of 3.5
networks:
default:
driver: bridge
name: nssams_bridge
對于許多實際用途,您也可以讓 Compose 選擇網路的名稱,因為您很少直接與它互動。如果您需要手動docker network命令或從另一個 Compose 檔案中參考網路,Compose 將projectname_default使用當前目錄的名稱作為專案名稱來命名網路。如果這對您來說是可以接受的,那么您可以networks:完全洗掉此塊。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/434667.html
