Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker compose即使在重建后也不使用最新版本_Docker_Docker Compose - Fatal编程技术网

Docker compose即使在重建后也不使用最新版本

Docker compose即使在重建后也不使用最新版本,docker,docker-compose,Docker,Docker Compose,我有一个奇怪的问题,昨天才开始。 通常,我有一个简单的工作流,每当我有一个新的更新,我就会构建新的容器,并重新启动docker 因此: bash docker编写构建 然后我做docker写作;docker compose up。 并且使用最新版本 但是,出于某种原因,它继续使用旧版本 在Dockerfile中,我有两行代码: 复制。 运行npm运行构建 真正让我恼火的是,在stdout中,我可以看到它正在编写新文件,因此使用最新版本的代码(我知道这一点,因为有一些新文件以前不存在,它们正在s

我有一个奇怪的问题,昨天才开始。 通常,我有一个简单的工作流,每当我有一个新的更新,我就会构建新的容器,并重新启动docker

因此:
bash docker编写构建
然后我做
docker写作;docker compose up
。 并且使用最新版本

但是,出于某种原因,它继续使用旧版本

在Dockerfile中,我有两行代码:

复制。
运行npm运行构建
真正让我恼火的是,在stdout中,我可以看到它正在编写新文件,因此使用最新版本的代码(我知道这一点,因为有一些新文件以前不存在,它们正在stdout中登录)

但是,一旦构建完成,我进入容器,我可以看到它使用的是旧版本的代码

所以,对我来说,这感觉就像是在正确构建,只是使用了不正确的版本

我想一定是出了什么问题,于是我删除了所有容器,删减了卷,重新启动了ubuntu,然后再试一次。成功了

但是,问题又重新开始了,我似乎不知道发生了什么

帮忙

编辑:
我应该提到的是,我已经尝试了docker compose-up--build,我已经尝试了强制创建和无缓存标志。我还是不走运。

我发现这个问题与音量有关。 因为我现在创建了一个卷,其中两个不同的容器共享代码,而不是使用新代码,所以它总是使用相同的代码

所以要解决这个问题,只需要docker compose down上的
-v
docker compose down-v


这删除了所有卷,解决了问题。

尝试
docker compose up--build--force recreate
您的
docker compose.yml
文件中有什么?(是否有
卷:
替换图像代码?)?