Docker:修改容器生成新镜像,导出备份,移植到离线环境

导读:本篇文章讲解 Docker:修改容器生成新镜像,导出备份,移植到离线环境,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

场景

项目中使用了docker版的某软件,但是这款开源软件也有自己的一些问题,需要修改,下面讲一下如何修改已有镜像,制作自定义的镜像

制作自定义镜像

查看容器

$ docker ps

IMAGE 镜像名,对应的 CONTAINER ID为容器id
在这里插入图片描述

进入容器

$ docker exec -it 容器id /bin/bash

可以看到,进入了docker内的文件系统
在这里插入图片描述

修改文件

找到你想修改的文件

退出容器内环境

$ exit

由于我们使用exec进入,不是attach,所以exit也没关系,不会停止容器

提交容器为镜像

$ docker commit -a "OxyeMa" -m "myOnlyoffice" 容器id 仓库名:tag

sha256 出现就成功
在这里插入图片描述

查看一下,挺大一个

在这里插入图片描述

备份镜像到本地

$ docker save -o MyOnlyofficeV1.tar 仓库名:tag

这个包可以导出来,备份到其他地方,以后就可以移植到其他机器上部署了
(这边我第一次后面写的是镜像id,没用仓库名:tag,所以再load时REPOSITORY TAG 为,又使用docker tag命令改了名字)
在这里插入图片描述
可以导到本地
在这里插入图片描述

移植自己的镜像

清除演示环境

这一步我还拿自己用的Linux环境,先把容器和镜像清除了,如果你要移植到其他环境,可以忽略这一步

清除容器

$ docker ps
$ docker stop 容器id
$ docker rm 容器id
$ docker ps

在这里插入图片描述
清除镜像

$ docker images
$ docker rmi 镜像id
$ docker images

移除第二个镜像比第一个慢,移除的内容还多,这是由于docker的分层结构导致的差异
在这里插入图片描述
如果只有一个镜像,移除了是下面这样的
在这里插入图片描述

读取本地镜像

将镜像tar包导入Linux,切到所在目录执行以下命令

$ docker load -i MyOnlyofficeV1.tar

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

运行自定义容器

$ docker run -i -t -d -p 9001:80 -v /data/aws_s3/file-storage:/var/www/onlyoffice/documentserver/web-apps/wsData 镜像id

成功运行
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/93740.html

(0)
小半的头像小半

相关推荐

极客之家——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!