feat: 增加docker容器镜像版本无损升级笔记
This commit is contained in:
parent
5cc9177db9
commit
b466ebdda0
60
常见问题记录/Docker容器的镜像版本无损升级.md
Normal file
60
常见问题记录/Docker容器的镜像版本无损升级.md
Normal file
@ -0,0 +1,60 @@
|
||||
# 无损升级Docker容器的镜像版本¶
|
||||
|
||||
本文以更新频繁的portainer镜像为例,介绍如何使用runlike工具升级已启动容器的镜像。
|
||||
|
||||
1. 查看已启动的容器ID并停止运行
|
||||
1. 查看容器
|
||||
|
||||
```Bash
|
||||
|
||||
docker ps -a
|
||||
```
|
||||
|
||||
输出:
|
||||
|
||||
```Bash
|
||||
|
||||
CONTAINER ID IMAGE NAMES
|
||||
70476c317017 portainer/portainer-ce portainer
|
||||
```
|
||||
|
||||
2. 停止容器
|
||||
|
||||
```Bash
|
||||
|
||||
docker stop 70476c317017
|
||||
```
|
||||
|
||||
2. 使用pip安装runlike工具
|
||||
|
||||
```Bash
|
||||
|
||||
pip install runlike
|
||||
```
|
||||
|
||||
3. 使用runlike工具获取容器启动命令并替换
|
||||
|
||||
```Bash
|
||||
|
||||
runlike 70476c317017
|
||||
```
|
||||
|
||||
输出:
|
||||
|
||||
```Bash
|
||||
docker run --name=portainer --hostname=70476c317017 --env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin --volume=/var/run/docker.sock:/var/run/docker.sock --volume=portainer_data:/data --volume=/data --workdir=/ -p 8000:8000 -p 9000:9000 --restart=always --runtime=runc --detach=true portainer/portainer-ce
|
||||
```
|
||||
|
||||
4. 创建新的容器并继承原有容器配置和数据¶
|
||||
为了避免容器命名冲突,此处需要更改以下容器名称,然后拷贝以上命令即可得到更新镜像后的容器。
|
||||
|
||||
```Bash
|
||||
docker run --name=portainer_new --hostname=70476c317017 --env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin --volume=/var/run/docker.sock:/var/run/docker.sock --volume=portainer_data:/data --volume=/data --workdir=/ -p 8000:8000 -p 9000:9000 --restart=always --runtime=runc --detach=true portainer/portainer-ce
|
||||
```
|
||||
|
||||
5. 清理旧的容器
|
||||
|
||||
```Bash
|
||||
|
||||
docker rm 70476c317017
|
||||
```
|
@ -1,2 +1,3 @@
|
||||
* [主页](ReadMe.md)
|
||||
* [开发环境搭建](开发环境搭建.md)
|
||||
* [开发环境搭建](开发环境搭建.md)
|
||||
* [Docker容器的镜像版本无损升级](Docker容器的镜像版本无损升级.md)
|
||||
|
Loading…
x
Reference in New Issue
Block a user