我正在尝试使用 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 关注
- 125 浏览
添加回答
举报
0/150
提交
取消