我正在嘗試使用 docker 映像,它根據我的使用方式顯示不同的行為。該圖像是https://hub.docker.com/r/chriszarate/wordpress-phpunit/Github 是https://github.com/chriszarate/wordpress-phpunit用法 1 - 本地構建克隆存儲庫跑步docker-compose -f docker-compose.yml run --rm wordpress_phpunit php -v輸出:PHP 7.2.10 (cli) (built: Sep 17 2018 09:23:43) ( NTS )Copyright (c) 1997-2018 The PHP GroupZend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.10, Copyright (c) 1999-2018, by Zend Technologies with Xdebug v2.6.1, Copyright (c) 2002-2018, by Derick Rethans用法 2 - 在我的 docker-compose.yml 中使用它我的 docker-compose.ymlversion: "3"services: wordpress_phpunit: image: "chriszarate/wordpress-phpunit"跑步Run docker-compose -f docker-compose.yml run --rm wordpress_phpunit php -v輸出:PHP 7.1.5 (cli) (built: May 13 2017 10:49:18) ( NTS )Copyright (c) 1997-2017 The PHP GroupZend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.1.5, Copyright (c) 1999-2017, by Zend Technologies with Xdebug v2.5.3, Copyright (c) 2002-2017, by Derick Rethans請注意,用法 1安裝PHP 7.2.10,而用法 2安裝PHP 7.1.5我查看了 Docker 中心,它具有 git 存儲庫中的最新更改。我在這里錯過了什么嗎?
1 回答

桃花長相依
TA貢獻1860條經驗 獲得超8個贊
所以這就是可能發生的情況:
docker鏡像
phpunit-docker/6.0.6
最初被構建并推送到 docker 存儲庫。當時,PHP 7 的版本為 7.1.5,因此 Dockerfile將該版本構建到映像中。chriszarate/wordpress-phpunit
然后構建了 docker 鏡像。由于它基于phpunit-docker/6.0.6
,因此生成的圖像內置了 PHP 7.1.5 。一段時間后,
phpunit-docker/6.0.6
構建并再次推送到 docker 存儲庫。只不過這一次,PHP 7 的版本是 7.2.10。這確實很奇怪,但也許不應該發生。
所以,在這種情況下:
如果您
docker pull chriszarate/wordpress-phpunit
,您將獲得 PHP 7.1.5,因為它內置于 docker 存儲庫上的存儲映像中,如果您
git pull
改為相應的項目,然后在本地構建它,它將基于最新的phpunit-docker/6.0.6
映像,因此運行 PHP 7.2.10。
請注意,可能還有其他解釋。不過,這似乎很合理。
- 1 回答
- 0 關注
- 177 瀏覽
添加回答
舉報
0/150
提交
取消