首页 > 其他分享 >[Docker]如何添加文件卷到已存在的docker容器

[Docker]如何添加文件卷到已存在的docker容器

时间:2023-12-02 15:32:12浏览次数:50  
标签:容器 src -- myapp2 usr 卷到 Docker docker

[Docker]如何添加文件卷到已存在的docker容器_docker

情景描述

在业务部署的前期,docker只映射了一部分文件卷,在业务运行一段时间后,发现还有新的文件卷需要被映射,那如何快速实现?

对于一个已经存在的容器Container,添加文件卷不能像新建容器时那样直接使用-v参数操作。

操作前提是:你至少需要关停容器一次,需要计划停机时间和日期(规划),通知受影响的相关使用部门(如果是本部门的业务,也许可以便宜行事)。

额外添加卷步骤

使用docker commit基于已经存在的容器创建一个新映像,然后添加新文件卷到新映像,这会保留所有已经存在的配置、脚本、库、控件等信息,最小限度的代价实现需求。

1.获取容器的ID

docker ps

[Docker]如何添加文件卷到已存在的docker容器_bash_02

2.clone指定的容器

docker commit b56d1c908b25 newname

上述命令完成后,你会得到一个原始容器的克隆映像,你需要重新创建服务,启用新映像.

3.添加新的文件卷到克隆容器中并指定工作目录

-v

docker  run -itd --name newdev -v myapp2:/usr/src/myapp2 -w /usr/src/myapp newname bash

--mount

docker  run -itd --name newdev --mount src=myapp2,dst=/usr/src/myapp2 -w /usr/src/myapp newname bash

4.启动容器并检查服务状态

进入容器,查看服务运行状态

docker exec -it <containers> bash
ps aux

标签:容器,src,--,myapp2,usr,卷到,Docker,docker
From: https://blog.51cto.com/ciscoskys/8657554

相关文章

  • 总结-解决国内服务器、nas 、docker访问国外网站、更新镜像、遇到的问题
    proxy可以通过修改环境变量,添加代理协议、服务器ip和端口,可以解决访问github、google等网站的问题,同时会遇到国内外分流、ipv6访问等问题。详细可以寻找projectX。解决DNS的问题运营商的dns存在着污染的情况,导致一些网页解析到了无法访问的ip,可以通过以下方法解决。修改DNS......
  • Docker极简入门
    Ubuntu安装Dockersudoaptinstalldocker.io开启Docker服务sudosystemctlenabledockersudosystemctlstartdocker为当前用户赋予Docker用户组权限sudogroupadddockersudousermod-aGdocker${USER}newgrpdocker使用ps命令,该命令的功能是列出所有容,检查Docke......
  • .NET Core|--调用C++库|--docker环境下让web api应用程序调用C++类库
    前言#前提安装docker环境~启动docker~#多说一句,为什么我要搞这个一个镜像,既包含gcc开发环境,又包含.NET开发环境我的api应用程序是基于.NET写的,但是我的这个api程序,又要调用c++的一些东西,特别是涉及一些画图之类的,所以就需要gcc的开发环境,最终搞了这么一......
  • Docker|--镜像中既有gcc和.NET运行时, 但是容器启动的时候报错 exec: "dotnet": exec
    基本信息#镜像gcc_for_net7_image是如何产生的,分为3步1.基于gcc的镜像运行起来的一个包含了gcc环境的容器,2.在这个容器里安装了.NET7运行时,3.再将这个包含了gcc环境和.NET7的容器打包为一个镜像"gcc_for_net7_image"总之,这个镜像"gcc_for_net7_image"既包含了gcc......
  • docker-compose version 版本匹配
     version:'3.8'services:rmqnamesrv:image:apache/rocketmq:5.1.0container_name:rmqnamesrvports:-9876:9876restart:alwaysprivileged:truevolumes:-/usr/local/rocketmq/nameserver/logs:/home/rocket......
  • Doker:最新docker-compose操作
    1.dockercompose说明目前docker新版本已经集成dockercompose工具,直接使用"dockercompose"命令就可以操作2.docker-compose.yml文件说明dockercompose命令的运行需要docker-compose.yml文件的支持,可以指定文件位置,也可以在文件同目录运行命令docker-compose.yml示例文......
  • docker 安装 mysql
    1.拉取镜像sudodockerpullmysql2.创建mysql配置文件目录mkdir-p/opt/module/mysql/conf/opt/module/mysql/data /opt/module/mysql/conf/config.d/3.创建mysql配置文件touch/opt/module/mysql/conf/my.cnf4.对3my.cnf添加配置,如果mysql状态一直......
  • docker 安装
    1.卸载旧版本的dockersudoapt-getremovedockerdocker-enginedocker.iocontainerdrunc2. 如果您想保留现有数据,那么直接进入下一步即可。如果您不想保留现有数据(可选),如image、container、volume等,执行下面的命令,相比remove命令,purge会同时清除软件包和软件的配置文......
  • Docker 的一些常见命令
    dockerimagesdockerrim(后面跟dockerimagename,或者imageid)dockerbuilddockerbuild--tagimageName.//将当前目录下的dockerfilebuild成imageName的最新版本dockerpushdockerpushrepoName/imageName//将本地制作的镜像push到仓库中官方文......
  • Windows使用命令行方法,实现docker默认安装目录修改及更改docker镜像默认保存路径
    一、使用软连接方法,修改Docker默认安装目录查看Windows上安装DockerDesktop官方安装指南:https://docs.docker.com/desktop/install/windows-install/  1、提前在D盘新建Program\Docker,使用这行代码安装:"DockerDesktopInstaller.exe"install--installation-dir......