当前位置:首页 > NAS > 正文内容

docker如何修改容器内部文件的方法

ym02302年前 (2024-01-11)NAS3680

Docker修改容器内部文件的方法一共有三种。

1、进入容器内部修改
使用下面的命令以命令行的形式可以进入容器的内部对文件进行修改。

docker exec -it 容器ID /bin/bash

不过里面没有vim,需要自行安装,安装代码如下所示。不过不推荐这种形式,因为里边的文件是临时的,容器被删除之后,配置就失效了,需要从新配置。

apt-get update
apt-get install vim

2、通过docker cp拷贝进行修改
可以通过下面的代码将需要修改的文件拷贝出来,修改完成之后再拷贝回去。这种方式其实和第一种差不多,只是不用安装vim,但是容器被删除之后,修改过的内容也会失效。而且需要重启容器才能生效(好像)

#将容器中的文件拷贝出来
sudo docker cp 容器ID:/etc/mysql/my.cnf /home/tom/
#将容器中的文件拷贝回去
sudo docker cp /home/tom/my.cnf  容器ID:/etc/mysql/

3、使用-v挂载文件夹(推荐)
最后一种方法是在启动的时候使用-v将容器内部的文件夹挂载(映射)到本地的某个路径下,以后以后可以直接在本地修改,不需要进入容器内部.

#冒号前是本地路径(需要绝对路径),冒号后是容器中的路径
$ sudo docker run -p 8000:3000 --name koaapi2 -v /home/kason/work/docker_demo/:/app -d wxm888/docker_demo_koa

注意启动容器后,虽然文件会同步到容器内,但是不会生效,要停止重启容器。
比如修改了本机的路由,虽然容器内文件会修改,但是请求不到,所以可以觉得在本机开发差不多了再执行挂载文件夹的命令。


扫描二维码推送至手机访问。

版权声明:本文由嘉睿博客发布,如需转载请注明出处。

本文链接:https://tius.cc/?id=56

标签: docker
分享给朋友:

“docker如何修改容器内部文件的方法” 的相关文章

快速清理群晖NAS上docker无用的版本文件

快速清理群晖NAS上docker无用的版本文件

     前几天写了一篇文章《在群晖使用Docker安装的容器升级方法》,于是有网友觉得采用我这种办法升级docker容器,系统会留下“垃圾”。那么今天我就教你一招清理docker因升级容器而留下无用的版本文件的方法。1、在电脑上打开SSH软件,我这里使用的是MobaX...

解决 Docker 安装 Jellyfin 封面图和部分中文字幕变方块

解决 Docker 安装 Jellyfin 封面图和部分中文字幕变方块

如果你在 Docker 中安装 Jellyfin,很可能遇到下面这种情况:(封面图里的中文字变方块)(ASS字幕里的中文字变方块)下面来解决。在容器中安装中文字体进入容器的 bash,依次输入以下命令:apt update  apt install font...

UNRAID安装配置nginx proxy manager反向代理

UNRAID安装配置nginx proxy manager反向代理

如果你配置在unraid上的某个docker需要https连接,那反向代理很适合你。unraid要实现反代只要一个简单的docker就行了,那就是nginx proxy manager(下称NPM)#需要的材料一个域名,并且最好托管在阿里云或者腾讯(DNSPOD),以方便NPM申请证书。#安装unr...

群辉SurveillanceStation-x86_64-9.1.1-10728开心办法

群辉SurveillanceStation-x86_64-9.1.1-10728开心办法

[password]方法1、官网下载https://global.synologydownload.com/download/Package/spk/SurveillanceStation/9.1.1-10728/SurveillanceStation-x86_64-9.1.1-10728.spk手...

truenas scale部署docker,推荐使用Portainer-ce

truenas scale部署docker,推荐使用Portainer-ce

1,在TrueNAS-SCALE版本 21.08-BETA.2 中,已经不需要修改 daemon.json,可以直接run。2,网络模式推荐使用host,而不是bridge。host更容易内网穿透(emby,transmission,qbittorrent)。bridge虽然译为桥接,但他其实有一层...

宝塔NGINX搭建企业微信中转服务代理

宝塔NGINX搭建企业微信中转服务代理

首先选一个端口,我选的是6705在宝塔安全里面放行端口,如果是阿里云或者腾讯云的进控制台把端口在安全组里放行。然后在宝塔NGINX 管理,点配置修改,在最底部include /www/server/panel/vhost/nginx/*.conf; }上面这段代码的前面加入以下代码:se...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。