Git 如何在docker中重新启动正在运行的服务而不重新启动docker映像或docker映像停止工作

Git 如何在docker中重新启动正在运行的服务而不重新启动docker映像或docker映像停止工作,git,docker,.net-core,Git,Docker,.net Core,我的情况是,我想让我的docker映像在运行“docker run…”时从git中提取代码 构建并使其在docker容器中再次运行,而无需重新启动docker容器 我尝试使用kill$(ps aux|grep“filename.dll”|awk“{print$2}”)停止“dotnet filename.dll” 以前正在运行,但它使我的docker停止工作 更新 我知道这是一个糟糕的做法,但我的客户需要它,然后我在这里问。 我已经知道最佳实践清洁,使其清洁的形象。 请理解我。这里最简单的答案

我的情况是,我想让我的docker映像在运行“docker run…”时从git中提取代码

构建并使其在docker容器中再次运行,而无需重新启动docker容器

我尝试使用
kill$(ps aux|grep“filename.dll”|awk“{print$2}”)
停止“dotnet filename.dll”

以前正在运行,但它使我的docker停止工作


更新 我知道这是一个糟糕的做法,但我的客户需要它,然后我在这里问。 我已经知道最佳实践清洁,使其清洁的形象。
请理解我。

这里最简单的答案是:不要。 您正在尝试解决使用容器的基本意图之一,即快速启动和停止时间。尝试避免删除和创建用于代码更新的容器实例并不是您应该担心的事情。如果您的图像是提取代码而不是更新的图像,那么您的图像首先不一定满足图像的目的。图像旨在更新以改进或更新应用程序。
我强烈建议您熟悉工作流程,而不是试图绕过它。

我尝试运行docker exec-it来阻止它,但它不起作用。为什么我得到-1我的问题出了什么问题?通常你需要在主机上运行
git pull
docker build
来构建一个新映像,然后
docker从新映像上运行一个新容器。删除和重新创建这样的代码更新容器是非常常规的。@DavidMaze我知道这会处理很多我读过的博客文章,在他们喜欢你告诉我之前。但我的客户要求这样做,然后我在这里问怎么做。是的,我知道,我理解。我也不能回避客户的要求。我可以控制一切,我不会像我要求的那样去做。