不想重写Dockerfile如何更改docker容器的挂载目录

news2025/1/2 4:27:17

一、问题

从网络上下载的很多Dockerfile或docker-compose文件进行启动容器的时候,部分重要的目录是依赖volumes挂载到容器内部的,如图

这就会出现一个问题,当我们想将容器打包,便于以后使用的时候,这部分挂载的文件是没有办法打包进去的,迁移到其他地方就会出现容器不可用,那么给大家介绍一个方法。

二、解决方案

当遇到这种情况,一般来讲,我们的思路都是去重写Dockerfile,将本该挂载到容器的文件,以COPY的形式放到容器里,这样便从根源上解决了这个问题。但是,当遇到Dockerfile拉不起容器的时候(哈哈哈哈,我就是这种情况,之前能用Dcokerfile拉起容器,后面就不行了,很头疼),我们就不得不从已经启动的容器上入手。

接下来介绍方法:

tips:原本的挂载目录是:/usr/local/apache2/htdocs/

1、首先,现在容器里创建一个目录,目录名字随意

我在原本挂载目录的同级目录下创建了一个bak文件。

然后,退出容器,要记住容器id。

2、停止docker服务

停止docker服务: service docker stop (或 systemctl stop docker)

验证服务是否运行: docker ps -a

3、修改容器配置文件

找到如下目录:

/var/lib/docker/containers/

在该目录下,存放着当前主机上运行的所有docker容器的信息,每个文件夹以docker容器id命名。

4、进入到需要修改的容器id目录下

5、修改config.v2.json文件

 将上图所标注的3个位置,修改为一个新的目录:如:/usr/local/apache2/bak

修改后,保存

5、启动docker服务

启动docker服务: service docker start (或 systemctl start docker)

验证服务是否运行: docker ps -a

6、docker start 容器id,启动容器,重新将所需文件,使用docker cp拷贝到容器指定位置

7、将容器重新提交成镜像,使用新镜像再次启动容器,该问题即可解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/386147.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ArcGIS中地形渲染图制作技巧

01 概述 DEM数据作为GIS数据中常见的一种数据,经常都会使用到,除了用来生成等高线、高程点和做各种分析之外,生成地形渲染图也是常见的用途之一,这里给大家介绍一下ArcGIS中地形渲染图制作技巧,希望能够对大家有所帮…

领英开发外贸客户新方式—领英精灵

一、领英精灵是什么? 领英精灵是在LinkedIn领英这个全球最大的职业社交平台基础上研发出的一款工具软件,领英精灵最初研发定位是帮助那些想要在LinkedIn领英上挖掘开发客户需求的人群使用,但他的功能又不仅仅局限于外贸行业。干一行说一行&a…

Java知识复习(十一)RabbitMQ

1、RabbitMQ简介 RabbitMQ 是采用 Erlang 语言实现 AMQP(Advanced Message Queuing Protocol,高级消息队列协议)的消息中间件 2、RabbitMQ核心概念 RabbitMQ 整体上是一个生产者与消费者模型,主要负责接收、存储和转发消息 3、Producer和…

Zookeeper3.5.7版本——集群部署(linux环境-centos7)

目录一、三台服务器信息二、Zookeeper3.5.7官网下载2.1、官网下载地址2.2、下载步骤三、三台服务器都安装jdk11(Zookeeper需要jdk支持)四、Zookeeper3.5.7集群部署4.1、centos7虚拟机1 (192.168.136.27)服务器安装步骤4.1.1、解压…

day23_多线程基础

今日内容 上课同步视频:CuteN饕餮的个人空间_哔哩哔哩_bilibili 同步笔记沐沐霸的博客_CSDN博客-Java2301 零、 复习昨日 一、作业 二、进程与线程 三、创建线程 四、线程的API 五、线程状态 六、线程同步 零、 复习昨日 晨考 一、作业 见答案 二、进程与线程[了解] 一个进程就…

上海分时电价机制调整对储能项目的影响分析

安科瑞 耿敏花 2022年12月16日,上海市发改委发布《关于进一步完善我市分时电价机制有关事项的通知》(沪发改价管〔2022〕50号)。通知明确上海分时电价机制,一般工商业及其他两部制、大工业两部制用电夏季(7、8、9月)和冬季&#x…

MyBatis底层原理【源码运行时序图】

MyBatis初始化流程🛷 以下代码为例🎉 🎇可对应源码阅读 MyBatis初始化流程✨ #mermaid-svg-yoG1e8Dnp3UIAOUW {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-yoG1e8Dnp3UIAOU…

robotframework 常用关键字

ctrl shift 空格:自动补全关键字 F5:搜索关键字 F8:执行用例 ctrl shift s:保存整个工程 ctrl r:查看报告 ctrl 鼠标悬浮:显示关键字的信息 ctrl #:屏蔽代码 ctrl $:…

4-spring篇

ApplicationContext refresh的流程 12个步骤 prepareRefresh 这一步创建和准备了Environment对象,并赋值给了ApplicationContext的成员变量 要理解Environment对象的作用 obtainFreshBeanFactory ApplicationContext 里面有一个成员变量,Beanfactory b…

Navicat 现已支持 OceanBase 全线数据库产品

Navicat 作为 OceanBase 生态工具的合作伙伴,这是双方产品适配第三个里程碑。2022 年 7 月的首个里程碑,Navicat 实现了 OceanBase 社区版的功能性兼容。同年10 月,进一步实现了针对 OceanBase 企业版( 兼容 MySQL 模式&#xff0…

一文图解|I/O 调度层

当我们使用 read() 和 write() 系统调用向内核提交读写文件操作时,内核并不会立刻向硬盘发送 I/O 请求,而是先将 I/O 请求交给 I/O 调度层进行排序和合并处理。经过 I/O 调度层加工处理后,才会将 I/O 请求发送给块设备驱动进行最终的 I/O 操作…

【强烈建议收藏:MySQL面试必问系列之慢SQL优化专题】

一.知识回顾 学习本篇文章之前呢,我们可以先看一下【强烈建议收藏:MySQL面试必问系列之SQL语句执行专题】,看完这篇文章再来学习本篇文章可谓是如虎添翼。好的,那我们也不讲太多的废话,直接开始。 二.如何做慢SQL查询优化呢&…

《uniapp基础知识》学习笔记Day38-(Period2)全局文件一些常用的配置

如果进行开发的话,首先要配置路由页面 page.json 页面路由 pages.json 文件用来对 uni-app 进行全局配置,决定页面文件的路径、窗口样式、原生的导航栏、底部的原生tabbar 等。 {"pages": [{"path": "pages/component/index…

Centos7搭建DHCP

1.简介DHCP服务器又叫动态主机协议,由服务器划分一段地址池,客户端地址池中获取IP地址及掩码等信息端口:UDP 67/68主配置文件:/etc/dhcp/dhcpd.conf租约时间文件:/etc/sysconfig/dhcpd2.简单搭建DHCP服务PS&#xff1a…

离线数据仓库项目--技术选择

文章目录(一)技术选型1)数据采集工具2)数据存储3)数据计算4)数据可视化(二)整体架构设计(三)服务器资源规划(一)技术选型 1&#xff…

MySQL索引事务

1.索引1.1概念索引是一种特殊的文件,包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引,并指定索引的类型,各类索引有各自的数据结果实现。(这里只用通俗的语言和图片进行介绍)1.2作用数据库中的表…

洗地机哪个牌子好?口碑最好的洗地机

选择洗地机,最关键的当然是清洁力度啦,这就要看洗地机的吸力如何了,一般情况下,吸力越大,越能够吸附顽固污渍,清洁力度就越好。然后杀菌功能也是必不可少的,毕竟是要清洁整个家的地面卫生&#…

Android 圆弧形 SeekBar

效果预览package com.gcssloop.widget;import android.annotation.SuppressLint;import android.content.Context;import android.content.res.TypedArray;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Matrix;import android.graph…

ViT(Vision Transformer) TNT(Transformer in Transformer)

ViT(Vision Transformer) ViT的结构 ViT将输入图片分为多个patch(16x16),再将每个patch投影为固定长度的向量送入Transformer,后续encoder的操作和原始Transformer中完全相同。但是因为对图片分类,因此在输入序列中加…

论文复现-3

模型构建中的运算 数据集是CONLL03 这个数据集共有4种实体类型,所以,在做实体描述的embedding时,得到的语义表示的Tensor大小为 : 4*max_len, 具体指的是: type_input_ids: torch.LongTensor None, type_attention_m…