更新没有原始docker文件的docker映像
我正在开发运行在ec2服务器上docker映像中的Flask应用程序 旧的开发人员似乎已经删除了原始的docker文件,我似乎找不到任何关于如何在没有原始docker文件的情况下将我的更改推入docker映像的说明 我可以使用以下方法手动复制更改: docker cp newChanges.py doc:/root/doc/server\u python/更新没有原始docker文件的docker映像,docker,Docker,我正在开发运行在ec2服务器上docker映像中的Flask应用程序 旧的开发人员似乎已经删除了原始的docker文件,我似乎找不到任何关于如何在没有原始docker文件的情况下将我的更改推入docker映像的说明 我可以使用以下方法手动复制更改: docker cp newChanges.py doc:/root/doc/server\u python/ 但我似乎找不到重新启动烧瓶的方法。我知道这不是理想的解决方案,但这是我唯一的想法。您可以尝试检查图像的历史记录,从那里您可能可以重新创建Do
但我似乎找不到重新启动烧瓶的方法。我知道这不是理想的解决方案,但这是我唯一的想法。您可以尝试检查图像的历史记录,从那里您可能可以重新创建Dockerfile。尝试使用
docker历史记录--无trunc图像名称
有关更多详细信息,请参见。您可以尝试检查图像的历史记录,从中您可能可以重新创建Dockerfile。尝试使用
docker历史记录--无trunc图像名称
有关更多详细信息,请参见。有一种方法可以将
newChanges.py
添加到现有图像,并使用新标记提交该图像,这样,如果遇到任何问题,您将有一个后退选项
假设您运行alpine官方映像,但没有DockerFile
每次重新启动映像时,都不会有newChanges.py
docker run --rm -name alpine alpine
在图像中使用ls
查看在Dockerfile中创建的现有文件列表
docker cp newChanges.py alpine:/
运行ls
并验证文件是否已被复制
下一步
要将这些更改提交到正在运行的容器,请执行以下操作:
Docker ps
获取容器ID并运行:
docker commit 4efdd58eea8a updated_alpine_image
现在运行您的alpine图像,您将看到更新后的更改
docker run -it updated_alpine_image
这是您将在具有DockerFile的update_alpine_图像中看到的内容
这就是如何从现有图像重建图像。您也可以尝试@uncletall answer。有一种方法可以将
newChanges.py
添加到现有图像,并使用新标记提交该图像,这样,如果遇到任何问题,您将有一个后退选项
假设您运行alpine官方映像,但没有DockerFile
每次重新启动映像时,都不会有newChanges.py
docker run --rm -name alpine alpine
在图像中使用ls
查看在Dockerfile中创建的现有文件列表
docker cp newChanges.py alpine:/
运行ls
并验证文件是否已被复制
下一步
要将这些更改提交到正在运行的容器,请执行以下操作:
Docker ps
获取容器ID并运行:
docker commit 4efdd58eea8a updated_alpine_image
现在运行您的alpine图像,您将看到更新后的更改
docker run -it updated_alpine_image
这是您将在具有DockerFile的update_alpine_图像中看到的内容
这就是如何从现有图像重建图像。您也可以尝试@uncletall答案。- 如果您只想在
之后重新启动,您可以docker cp
,然后docker停止$your\u container
docker启动$your\u container
- 如果要将
更新为docker图像而不使用原始newChanges.py
,可以使用Dockerfile
,然后docker导出-o$your_tar_name.tar$your_container
。以后,始终将docker导入$your_tar_name.tar$your_new_图像:tag
保留到备份服务器以备将来使用tar
- 如果您希望以后继续开发,请在将来使用
进行进一步更改:Dockerfile
- 您可以使用
生成一个新映像,并使用docker commit
将其推送到docker push
,其名称类似于dockerhub
my\u docker\u id/my\u image\u name:v1.0
- 您的新
:Dockerfile
- 您可以使用
- 如果您只想在
之后重新启动,您可以docker cp
,然后docker停止$your\u container
docker启动$your\u container
- 如果要将
更新为docker图像而不使用原始newChanges.py
,可以使用Dockerfile
,然后docker导出-o$your_tar_name.tar$your_container
。以后,始终将docker导入$your_tar_name.tar$your_new_图像:tag
保留到备份服务器以备将来使用tar
- 如果您希望以后继续开发,请在将来使用
进行进一步更改:Dockerfile
- 您可以使用
生成一个新映像,并使用docker commit
将其推送到docker push
,其名称类似于dockerhub
my\u docker\u id/my\u image\u name:v1.0
- 您的新
:Dockerfile
- 您可以使用