docker挂载文件修改生效怎么实现

avatar
作者
筋斗云
阅读量:2

要使Docker容器中挂载的文件修改生效,可以通过以下几种方式实现:

  1. 使用docker cp命令将修改后的文件复制回宿主机,并重新挂载到容器中。首先,进入容器内部,找到需要修改的文件,进行修改。然后,使用docker cp命令将修改后的文件复制到宿主机的指定目录中。最后,重新运行容器时,将修改后的文件作为挂载卷挂载到容器中。

    # 进入容器内部,修改文件 docker exec -it container_name /bin/bash # 修改文件 vim /path/to/file  # 复制文件到宿主机 docker cp container_name:/path/to/file /host/path  # 重新运行容器,将修改后的文件挂载到容器中 docker run -v /host/path:/path/to/file image_name 
  2. 使用docker commit命令将修改后的容器生成新的镜像,并重新运行新的镜像。首先,进入容器内部,找到需要修改的文件,进行修改。然后,使用docker commit命令将修改后的容器生成新的镜像。最后,使用新的镜像重新运行容器。

    # 进入容器内部,修改文件 docker exec -it container_name /bin/bash # 修改文件 vim /path/to/file  # 生成新的镜像 docker commit container_name new_image_name  # 使用新的镜像重新运行容器 docker run -v /host/path:/path/to/file new_image_name 
  3. 使用Dockerfile重新构建镜像。创建一个包含修改后的文件的Dockerfile,然后执行docker build命令重新构建镜像。在Dockerfile中使用COPYADD命令将修改后的文件复制到容器中。

    # Dockerfile FROM base_image  # 复制修改后的文件到容器中 COPY /host/path/to/file /path/to/file 
    # 重新构建镜像 docker build -t new_image_name .  # 使用新的镜像重新运行容器 docker run -v /host/path:/path/to/file new_image_name 

无论采用哪种方式,都需要先在容器内部进行文件的修改,然后将修改后的文件复制到宿主机或重新构建镜像,最后重新运行容器以使修改生效。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!